Je sais que j'utilise la dernière version (v3.2.1) Mais je veux le find en en-tête ou par programmation
Peut-être que c'est une question stupide, mais dans iOS, je ne peux pas find le numéro de version dans les en-têtes FacebookSDK.framework
Après environ 2014, faites simplement ceci:
NSLog( @"### running FB sdk version: %@", [FBSDKSettings sdkVersion] );
Pour les très vieilles versions. Avant environ 3.6:
J'ai trouvé un moyen non documenté pour imprimer la version SDK (FB_IOS_SDK_VERSION_STRING), essayez ceci
NSLog(@"### FB SDK VERSION : %@", [[FBRequestConnection class] performSelector:@selector(userAgent)]);
A travaillé pour moi avec SDK 3.5.1
J'espère que cela pourra aider…
Mise à jour: A partir de FB SDK 3.6, "Le numéro de version du SDK est défini dans FacebookSDK.h et disponible dans [FBSDKSettings sdkVersion]"
Jetez un oeil à FBSDKVersion.h
. Il y a une définition là-bas:
#define FB_IOS_SDK_VERSION_STRING @"3.2.1"
Vous pouvez find la version de votre SDK Facebook dans FBSDKCoreKit.h
défini comme
#define FBSDK_VERSION_STRING @"X.XX.X"
. Jetez un oeil à l'image ci-dessous.
Pour ceux qui exécutent la version SDK> = 4, [FBSDKSettings sdkVersion]
.
#import <FBSDKCoreKit/FBSDKCoreKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { NSLog(@"### Running FB SDK Version: %@", [FBSDKSettings sdkVersion]); }
Dans le directory SDK, j'ai fait:
% find . -name \*.h -exec fgrep -i version {} /dev/null \;
Entre autres choses, la ligne suivante a été returnnée:
./FBSDKCoreKit.framework/Headers/FBSDKCoreKit.h:#define FBSDK_VERSION_STRING @"4.11.0"
Cela vous aidera à identifier la version sans avoir besoin de lier / exécuter / loger.
Facebook est peut-être la seule entreprise technologique au monde qui omet le numéro de version de son file tar / zip, ainsi que le directory racine décompressé. Je trouve cela déroutant.
Dans swift 2, FBSDK 4.4 vous pouvez sortir la string de version:
print("FBSDK Version: \(FBSDK_VERSION_STRING)"); //outputs: //FBSDK Version: 4.4.0
FBSDKSettings.version () a renvoyé 0 pour moi.
Pour vérifier la version actuelle de Facebook SDK, utilisez la ligne ci-dessous:
print("SDK version \(FBSDKSettings .sdkVersion())")
Dans mon cas, SDK version 4.8.0
Testé avec swift 2.0 et xCode 7.0+
Pour Facebook SDK 3.18, je devais faire
#import <FacebookSDK/FacebookSDK.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { NSLog( @"My app is running FB sdk version: %@", [FBSettings sdkVersion]); }