J'utilise le programme shareKit pour moi-même.
mais dans le FBConnectGlobal, il y a un avertissement,
NSMutableArray* FBCreateNonRetainingArray() { CFArrayCallBacks callbacks = kCFTypeArrayCallBacks; callbacks.retain = RetainNoOp; callbacks.release = ReleaseNoOp; return (NSMutableArray*)CFArrayCreateMutable(nil, 0, &callbacks); }
comme cette méthode, il avertissement: "Aucun prototype précédent pour la fonction FBCreateNonRetainingArray"
Pour clarifier la réponse d'Eric Dchao ci-dessus, quelqu'un à facebook n'a apparemment pas mis un "statique" devant ce BOOL?
Quoi qu'il en soit, changer de cette
BOOL FBIsDeviceIPad() { #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { return YES; } #endif return NO; }
pour ça
static BOOL FBIsDeviceIPad() { #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { return YES; } #endif return NO; }
Je l'ai réparé pour moi.
Selon c standard, déclarant le prototype comme
NSMutableArray* FBCreateNonRetainingArray(void); // ---------------> ^^^^ // Yes, with the void as the parameter
résout le problème.
MISE À JOUR : Désactiver les avertissements n'est pas une bonne solution, vérifiez la réponse de @Derek Bredensteiner.
Dans Xcode 4, accédez aux parameters de construction de votre projet. Recherche de "prototype". Il devrait y avoir une option appelée "prototypes de fonctions manquantes"; le désactiver.
via ici
Est-ce une fonction globale ? Ajoutez " statique " s'il est utilisé uniquement dans le file en cours.
La raison possible est la suivante:
aucun prototype précédent pour `foo '
Cela signifie que GCC a trouvé une définition de fonction globale sans voir de prototype pour la fonction. Si une fonction est utilisée dans plusieurs files, il devrait y avoir un prototype dans un file d'en-tête quelque part. Cela empêche les fonctions et leurs utilisations de se désynchroniser
Si la fonction est uniquement utilisée dans ce file, assurez-vous qu'elle ne sera jamais utilisée en dehors de ce file et documentez qu'il s'agit d'une fonction locale.