iOS 6 - La procédure de partage Facebook échoue avec l'erreur "L'application proxy n'est pas déjà installée"
Cependant, il ya une telle question Facebook Erreur (7) de l'iOS 6 c'est déjà fermé sans aucune réponse!
Lors de l'obtention d'un accès à de l'utilisateur de facebook compte j'ai une erreur:
error is: Error Domain=com.apple.accounts Code=7 "The Facebook server could not fulfill this access request: The proxied app is not already installed." UserInfo=0xa260270 {NSLocalizedDescription=The Facebook server could not fulfill this access request: The proxied app is not already installed.}
Je suis de l'exécution d'une requête comme ceci:
self.statusLabel.text = @"Waiting for authorization...";
if (self.accountStore == nil) {
self.accountStore = [[ACAccountStore alloc] init];
}
ACAccountType * facebookAccountType = [self.accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
NSDictionary * dict = @{ACFacebookAppIdKey : FB_APP_ID, ACFacebookAudienceKey : ACFacebookAudienceEveryone};
[self.accountStore requestAccessToAccountsWithType:facebookAccountType options:dict completion:^(BOOL granted, NSError *error) {
__block NSString * statusText = nil;
if (granted) {
statusText = @"Logged in";
NSArray * accounts = [self.accountStore accountsWithAccountType:facebookAccountType];
self.facebookAccount = [accounts lastObject];
NSLog(@"account is: %@", self.facebookAccount);
self.statusLabel.text = statusText;
[self postToFeed];
}
else {
self.statusLabel.text = @"Login failed";
NSLog(@"error is: %@", error);
}
}];
Ce que fait cette erreur signifie?
source d'informationauteur Stas
Vous devez vous connecter pour publier un commentaire.
J'ai résolu ce problème!
C'était parce que je ne passe pas des autorisations tableau!
Si le
ACAccountStore
classe indique que ce paramètre est facultatif, il n'est pas!Plus sur l'application pourrait lancer et de demander de permissions de base(comme il est sous-entendu)!
Donc, vous devez toujours passer un tableau des autorisations.
Voici une description des codes d'erreur retournés par un compte de magasin:
(J'ai
ACErrorPermissionDenied
ici)Nous avons eu le même problème et après avoir pris un oeil de plus près à l'iOS facebook de la documentation ad
https://developers.facebook.com/docs/howtos/ios-6/
J'ai remarqué que le paragraphe suivant:
Je dois avoir lu ça plusieurs fois, mais il contenait la solution:
Que vous avez à faire plusieurs demande d'accès si vous souhaitez accorder à écrire (publier l'accès). Alors maintenant, nous avons d'abord demander la permission "e-mail" pour obtenir l'autorisation de lecture et puis pour les "publish_action" pour être capable de poster sur la timeline.
Le message d'erreur n'est pas clair, car "app" pourrait être votre application iOS? Facebook.application sur le téléphone? Facebook app? Le "mandatées en application de l'Facebook app, et "n'est pas déjà installé", il n'a pas encore été associée avec le Facebook de l'utilisateur en ligne en termes d'autorisations.
La première fois votre Facebook app se connecte aux utilisateurs de Facebook de compte, vous devez spécifier les informations de base valeur(s) dans votre
ACFacebookPermissionsKey
clé des options de dictionnaire. Autres Facebook SDK du passé et du présent comme le Javascript ou PHP bibliothèques par défaut de fourniture d'informations de base comme la clé, de sorte que vous n'avez jamais eu. Il semble que l'intégration native d'iOS ne fait pas cela, donc, si lorsque l'utilisateur se connecte d'abord à votre application de leur Facebook compte sans autorisations fournies, vous obtenez cette erreur.Après vous avez accès, c'est à dire - une fois que l'utilisateur est connecté à l'application dans leurs paramètres de confidentialité en ligne,
ACFacebookPermissionsKey
fait comme Apple document, devenu facultatif.C'est un peu déroutant lorsque vous commencez à essayer et utiliser le natif Facebook de l'intégration...
À l'aide de la native de Facebook d'intégration, vous devez fournir l'une des touches suivantes, qui sont des informations de base de touches:
email
user_birthday
ouuser_location
.De citer Facebook (source):
Après l'expérience de cette erreur sur un de mes appareils (après avoir vu le bon, attendu iOS de l'affichage des alertes en me demandant d'approuver Facebook accès à mon application):
"Le Facebook serveur n'a pas pu répondre à cette demande d'accès: Invalid ID de l'application.'
J'ai enfin trouvé le problème.
Bien qu'au départ, il semble y avoir un problème avec le Facebook configuration de l'application sur le FB de développeur sur le site, il s'est avéré que mon appareil iOS Facebook compte n'avait plus un mot de passe valide associée à, ce qui peut heureux lorsque les utilisateurs de restauration d'un iOS sauvegarde sur un nouvel appareil. Une fois que j'ai trié que dans mes paramètres de l'appareil tout a fonctionné comme prévu.
Je n'ai pas eu de problème demandant 'publish_stream" dans la première FB autorisations de demande d'accès - en fait, je pense que le vrai problème ici est que les messages d'erreur sont tellement aléatoires qu'ils n'aident pas les développeurs à localiser la source des erreurs que nous connaissons grâce à Apple et Facebook de l'absence d'unité!
Un peu plus de choses que l'on peut essayer d'autres que les suggestions ci-dessus est de vérifier les paramètres de votre app sur facebook.com ici -
Assurez-vous que le Mode SandBox est réglé sur Off
Aussi,
Sous "Sélectionner le mode de votre application s'intègre à Facebook"
Select-> Natif iOS App
Enregistrer les modifications et essayer après un certain temps, car il pourrait prendre quelques minutes pour facebook pour synchroniser les modifications apportées à l'ensemble de ses serveurs.