IT TIP

iOS에서 Facebook SDK 버전 찾기

itqueen 2020. 12. 6. 22:27
반응형

iOS에서 Facebook SDK 버전 찾기


최신 버전 (v3.2.1)을 사용하고 있지만 헤더에서 또는 프로그래밍 방식으로 찾고 싶습니다.

어리석은 질문 일 수도 있지만 iOS에서는 FacebookSDK.framework 헤더에서 버전 번호를 찾을 수 없습니다.


2014 년경 이후에는 다음과 같이하십시오.

NSLog( @"### running FB sdk version: %@", [FBSDKSettings sdkVersion] );

아주 오래된 버전의 경우. 3.6 이전 :

SDK 버전 (FB_IOS_SDK_VERSION_STRING)을 인쇄하는 문서화되지 않은 방법을 찾았습니다.

NSLog(@"### FB SDK VERSION : %@",
    [[FBRequestConnection class] performSelector:@selector(userAgent)]);

sdk 3.5.1로 나를 위해 일했습니다.

도움이되는 희망 ...


업데이트 : FB SDK 3.6부터 "SDK 버전 번호는 FacebookSDK.h에 정의되어 있으며 [FBSDKSettings sdkVersion]에서 사용할 수 있습니다."

https://developers.facebook.com/ios/change-log-3.x/


FBSDKCoreKit.h다음과 같이 정의 된 Facebook SDK 버전을 찾을 수 있습니다.

#define FBSDK_VERSION_STRING @"X.XX.X". 아래 이미지를보세요.

여기에 이미지 설명 입력


를보세요 FBSDKVersion.h. 거기에 정의가 있습니다.

#define FB_IOS_SDK_VERSION_STRING @"3.2.1"


SDK 버전> = 4를 실행하는 경우 [FBSDKSettings sdkVersion].

#import <FBSDKCoreKit/FBSDKCoreKit.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog(@"### Running FB SDK Version: %@", [FBSDKSettings sdkVersion]);
}

SDK 디렉토리에서 다음을 수행했습니다.

% find . -name \*.h -exec fgrep -i version {} /dev/null \;

다른 것들 중에서 다음 줄이 반환되었습니다.

./FBSDKCoreKit.framework/Headers/FBSDKCoreKit.h:#define FBSDK_VERSION_STRING @"4.11.0"

이렇게하면 실제로 링크 / 실행 / 로그 할 필요없이 버전을 식별하는 데 도움이됩니다.

Facebook은 아마도 tar / zip 파일과 압축을 푼 루트 디렉토리에서 버전 번호를 생략 한 세계 유일의 기술 회사 일 수 있습니다. 나는 이것이 당혹스러워 보인다.


신속한 2, FBSDK 4.4에서는 버전 문자열을 출력 할 수 있습니다.

print("FBSDK Version: \(FBSDK_VERSION_STRING)");
//outputs:
//FBSDK Version: 4.4.0

FBSDKSettings.version ()은 나를 위해 0을 반환했습니다.


현재 버전의 facebook SDK를 확인하려면 아래 줄을 사용하십시오.

    print("SDK version \(FBSDKSettings .sdkVersion())")

제 경우에는 SDK 버전 4.8.0

Swift 2.0 및 xCode 7.0+에 대해 테스트되었습니다.


Facebook SDK 3.18의 경우

#import <FacebookSDK/FacebookSDK.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog( @"My app is running FB sdk version: %@", [FBSettings sdkVersion]);
}

Try (Android)-이 답변을 찾고 있었는데 안드로이드를 보지 못했기 때문에 게시했습니다.

String s = FacebookSdk.getSdkVersion();
                Log.d("FacebookSKD_V",s);

포드를 사용하는 경우 Info.plist 파일에서 확인할 수 있습니다.

"Pods/FBSDKCoreKit/Support Files/Info.plist"

버전이 핵심입니다 CFBundleShortVersionString

내 버전은 4.18.0이었습니다.

예:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>CFBundleDevelopmentRegion</key>
  <string>en</string>
  <key>CFBundleExecutable</key>
  <string>${EXECUTABLE_NAME}</string>
  <key>CFBundleIdentifier</key>
  <string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
  <key>CFBundleInfoDictionaryVersion</key>
  <string>6.0</string>
  <key>CFBundleName</key>
  <string>${PRODUCT_NAME}</string>
  <key>CFBundlePackageType</key>
  <string>FMWK</string>
  <key>CFBundleShortVersionString</key>
  <string>4.18.0</string>
  <key>CFBundleSignature</key>
  <string>????</string>
  <key>CFBundleVersion</key>
  <string>${CURRENT_PROJECT_VERSION}</string>
  <key>NSPrincipalClass</key>
  <string></string>
</dict>
</plist>

참고 URL : https://stackoverflow.com/questions/15736831/find-facebook-sdk-version-on-ios

반응형