web-dev-qa-db-fra.com

Comment faire pour que Xcode trouve le fichier FacebookSDK.h?

Il dit "fichier FacebookSDK/FacebookSDK.h introuvable"

Cependant, je peux passer directement à la définition sur l '# import et cela me mène au fichier. 

Et une fois que j'ai ajouté le # import, il sait maintenant ce que FBFriendPickerDelegate est et il n’a maintenant plus d’erreur sur cette ligne.

J'ai le facebookSDK.framework dans mon projet et dans le bon dossier. C'est le SDK 3.1 . J'ai essayé d'ajouter des chemins de recherche à/FacebookSDK et /FacebookSDK.framework et/FacebookSDK/Versions/A/En-têtes, etc. J'ai aussi essayé #import "FacebookSDK.framework/Versions/A/En-têtes/FacebookSDK.h. "et il dit toujours qu'il ne peut pas le trouver. J'ai aussi essayé de nettoyer et de redémarrer. J'ai la dernière version de Xcode.

//
//  FacebookView.h
//

#import <UIKit/UIKit.h>
#import <FacebookSDK/FacebookSDK.h>

@interface FacebookView : UIViewController <FBFriendPickerDelegate>
{
}
48
Curtis

Tout d'abord, vous devez supprimer votre FacebookSDK.framework de votre projet. Puis recommencez avec ces 5 étapes. NE PAS re-lier le cadre.

  1. Allez à Construire les phases dans votre cible de projet.
  2. Dans Link Binary With Libraries, cliquez sur le bouton "+".
  3. Cliquez sur le bouton "Ajouter un autre ..."
  4. Parcourez votre dossier FacebookSDK. Généralement dans ~/Documents/FacebookSDK /
  5. Cliquez sur (sélectionnez) "facebookSDK.framework" puis sur OPEN.

C'est tout. 

95
Fede Cugliandolo

Pas besoin d'enlever quoi que ce soit.

Dans votre projet, accédez à: " Configurer les paramètres ", puis " Les chemins de recherche ". Recherchez " Les chemins de recherche Frameworks ". Vous avez probablement quelque chose de fixe comme ça:

Chemins de recherche Frameworks:/Users/john/Documents/exampleappxyz

Changez le en:

Chemins de recherche des cadres: $ (PROJECT_DIR)

Voila !.

24
Hugo

J'ai essayé cela mais cela n'a pas fonctionné pour moi. Je devais aller dans les paramètres de construction pour le projet et corriger manuellement le Framework Search Paths FacebookSDK pour trouver le FacebookSDK.

9
Maurizio

Comment supprimer les liens sdk facebook:

Pour ceux qui, comme moi, ont mal ajouté le sdk de facebook. supprimer le kit de développement logiciel facebook de votre projet,

vérifiez le lien dans votre dossier frameworks, supprimez tout lien sdk facebook qui s'y trouve

allez dans Build Phases -> Liez Binary With Libraries et supprimez les sdk de facebook qui s'y trouvent

Faites un clic droit sur le dossier des frameworks et sélectionnez "Afficher dans le Finder", puis supprimez les sdk de Facebook qui s'y trouvent.

Suivez maintenant les étapes de "Fede Cugliandolo" et ajoutez le sdk de facebook

1
Arjay Waran

J'ai ce problème aujourd'hui.

Il se trouve que je dois avoir mon chemin de recherche Framework dans les trois endroits suivants:

1) Project Build Settings
2) App Target Build Settings
3) UnitTests Target Build Settings

Mon chemin de recherche est:

/Users/myusername/Documents/FacebookSDK

Après m'être assuré de cela, l'erreur a disparu pour moi.

1
Zhang

La seule solution que j'ai trouvée était:

  1. Supprimer le plugin phonegap: plugin ionique rm phonegap-facebook-plugin

  2. Cloner le prochain plugin git clone: ​​ https://github.com/jeduan/cordova-plugin-facebook4.git

  3. Ajoutez le plugin manuellement: cordova -d plugin add PATH/cordova-plugin-facebook4 --variable APP_ID = "*****" --variable APP_NAME = "*****"

Avant cela, nous avons essayé d’ajouter FacebookSDK.framework et d’installer le plugin phonegap via un clonage local, mais l’erreur persiste.

0
Kimy BF

Il suffit de suivre ces étapes:

  1. Ouvrez l'onglet Paramètres de construction de Xcode dans votre projet.
  2. Ajoutez ~/Documents/FacebookSDK au paramètre Chemins de recherche du cadre du projet. 
0
Md Rais

Suivez les instructions À l'étape 4, configurez votre projet Xcode Supprimez le fichier Facebook.sdk de votre projet et réessayez.

0
arttioz

Vous devez modifier la propriété "Chemin de recherche du cadre" dans vos paramètres de construction et spécifier l'emplacement du fichier FacebookSDK.framework (vous pouvez ensuite utiliser la variable SRCROOT pour pointer sur la racine du répertoire de votre projet et éviter ainsi d'utiliser des paramètres absolus. chemins;)) par exemple :

$(SRCROOT)/SampleProject/src/Utils/Facebook/

ceci est normalement fait automatiquement par Xcode lorsque vous importez une troisième partie de framework, mais cela gâche parfois (par exemple: lorsque vous modifiez votre arborescence de répertoires de projets ...)

J'espère que cela pourra aider...

0
poloDelaVega

Aucune des réponses ci-dessus n'a fonctionné pour moi.

En fin de compte, le truc pour moi était de changer la structure du dossier du plugin

  1. Créer un dossier: com.phonegap.plugins.facebookconnect/FacebookSDK

  2. Copier tout le contenu de: com.phonegap.plugins.facebookconnect/FacebookSDK.framework/Headersto com.phonegap.plugins.facebookconnect/FacebookSDK

  3. Copier com.phonegap.plugins.facebookconnect/Facebook.frameworkau com.phonegap.plugins.facebookconnect/FacebookSDK

Et enfin, changer 

#import <FacebookSDK/FacebookSDK.h>

à

#import "FacebookSDK/FacebookSDK.h"
0
Tyrone

J'avais le même problème lorsque j'ai mis à jour XCode, mais dans mon cas, je ne voulais pas modifier manuellement les paramètres du projet car j'utilisais CMake pour le créer. Vous pouvez trouver le chemin que j'ai corrigé ici: https://stackoverflow.com/a/25564152/525873

0
Chico

J'utilise xcode 5 et, lorsque j'ajoute sdk, il ne corrige pas l'écriture de l'adresse dans "project.pbxproj".

Au lieu de cela adresse locale pour SDK il enregistrer l'adresse globale.

J'ouvre "project.pbxproj" et trouve les lieux et laisse l'adresse uniquement pour sdk dans le projet.

<project name>/src/external/facebook
<project name>/src/external/testflight

pour modifier l'entrée était la suivante

/Users/<user Name>/myProjects/.../ios/<project name>/src/external/facebook
0
biloshkurskyi.ss

Cela se produit si vous avez importé le facebookSDK deux fois et après avoir supprimé certains fichiers.

Par exemple, j'ai importé le facebookSDK dans $ project/framework mais je l'ai supprimé pour certaines raisons. Ensuite, je l’ai importé via ~/Documents/FacebookSDK mais Xcode a conservé l’ancien dossier et y a effectué une recherche par défaut. 

Je dois supprimer toutes les références et les fichiers de l'ancienne importation pour résoudre mon problème.

0
Myrddin

J'ai fini par vérifier mon répertoire de projet, supprimer toutes les anciennes références au fichier framework. Ensuite, supprimez-le de Build Phases/chemins de recherche. Supprimez également le Framework lié. Redémarrez Xcode et recommencez le processus: faites glisser Framework vers Frameworks, ne copiez pas. Vérifiez les chemins de construction/phases de recherche. inclure "#import". Enfin travaillé. Ouf.

0
Anna Billstrom

en plus d'ajouter le chemin de recherche, je devais également définir les chemins d'accès sur récursif et supprimer "* .framework" de l'option "Sous-répertoires à exclure" pour que cela fonctionne.

0
neo

c'est simple, vous devez supprimer votre FacebookSDK.framework de votre projet. 

Accédez aux phases de construction dans votre cible de projet . Dans Link Binary With Libraries, cliquez sur le bouton "+" . Cliquez sur le bouton "Ajouter autre ..." Parcourez votre dossier FacebookSDK. Généralement dans ~/mohit/Documents/FacebookSDK / Cliquez sur (sélectionnez) "facebookSDK.framework" puis sur OPEN.

Maintenant, copiez ce paramètre de cible> chemin de recherche du framework dans Paramètre du projet> chemin de recherche du framework.

0
Mohit tomar