FBSDKLog: fbauth2 is missing from your Info.plist under LSApplicationQueriesSchemes and is required for iOS 9.0
Une idée de ce que c'est? Je l'ai ajouté dans mon plist mais je n'ai pas fonctionné.
Vous pouvez continuer à utiliser les modèles d'URL lorsque vous créez votre application pour iOS 9 et que vous souhaitez appeler des modèles d'URL. Vous devez maintenant les déclarer dans votre info.plist d'applications. Il y a une nouvelle clé, LSApplicationQueriesSchemes, et vous devez ajouter ici la liste des modèles que vous souhaitez utiliser pour canOpenURL.
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbauth2</string>
</array>
Si vous utilisez iOS9, il est important de mettre à jour votre fichier info.plist . Il vous suffit de suivre 3 étapes 1. Accédez à info.plist 2. Ajoutez un champ, à savoir LSApplicationQueriesSchemes NSArray datatype . 3. Ajoutez un élément de type de données NSString et nommez-le fbauth2.
C'est tout. Juste nettoyer et courir. avertissement ne sera plus afficher.
En ce qui concerne la v4.6.0 du kit de développement FaceBook, ajoutez la clé suivante dans votre fichier plist:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
Suivez simplement les explications de Facebook: Préparation de vos applications pour iOS9
Apple en parle dans: Privacy et Your App Keynote 2015
Veuillez simplement ne pas l'ajouter à vos schémas CFBundleURLS ... ce qui détournera toute tentative d'application de l'authentification de Facebook par une application, ce qui entraînera l'affichage d'une boîte de dialogue "L'application X veut ouvrir".
Vous ne voulez pas faire ça.
cf:
https://developers.facebook.com/docs/applinks/ios
https://www.fireeye.com/blog/threat-research/2015/04/url_masques_on_apps.html
https://www.reddit.com/r/workflow/comments/2tlx29/get_url_scheme_of_any_app
Je l'ai eu lors de l'exécution de mes tests Kiwi car notre cible de test n'avait pas accès au bundle principal. J'ai donc dû ajouter une condition à isRegisteredCanOpenURLScheme
dans FBSDKInternalUtility.m
+ (BOOL)isRegisteredCanOpenURLScheme:(NSString *)urlScheme
{
static dispatch_once_t fetchBundleOnce;
static NSArray *schemes = nil;
dispatch_once(&fetchBundleOnce, ^{
schemes = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"LSApplicationQueriesSchemes"];
if (!schemes) { // This is a work around for our Kiwi tests as the Specs target doesn't have access to main bundle
NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSString *path = [bundle pathForResource:@"Info" ofType:@"plist"];
NSDictionary *dictionary = [NSDictionary dictionaryWithContentsOfFile:path];
schemes = [dictionary valueForKey:@"LSApplicationQueriesSchemes"];
}
});
return [schemes containsObject:urlScheme];
}
Pour créer votre application pour iOS 9: (pour Facebook Share)
Info.plist
, ajoutez un autre champ LSApplicationQueriesSchemes sous Information Property List et définissez son type de données Array
ou NSArray
.String
ou NSString
.fbauth2
, fbshareextension
, fbapi
en tant que valeur d'élément.Suivez cette photo:
Write the below code in your info.plist under the **LSApplicationQueriesScheme**
<string>fbapi</string>
<string>fbapi20130214</string>
<string>fbapi20130410</string>
<string>fbapi20130702</string>
<string>fbapi20131010</string>
<string>fbapi20131219</string>
<string>fbapi20140410</string>
<string>fbapi20140116</string>
<string>fbapi20150313</string>
<string>fbapi20150629</string>
<string>fbauth</string>
<string>fbauth2</string>
<string>fb-messenger-api20140430</string>
<string>fb-messenger-platform-20150128</string>
<string>fb-messenger-platform-20150218</string>
<string>fb-messenger-platform-20150305</string>