J'ai essayé d'obtenir react-native-fbsdk
pour travailler avec CocoaPods, puisque je préfère de loin aller chercher le SDK Facebook dans le cadre du processus pod install
, mais je n'ai pas eu beaucoup de chance. Je suis conscient que je peux react-native link
la bibliothèque npm et télécharger manuellement et ajouter les cadres nécessaires, mais cela semble plutôt stupide quand j'ai un gestionnaire de paquets parfaitement à ma disposition.Faire réagir-native-fbsdk pour travailler avec CocoaPods
A en juger par the documentation il devrait être assez simple - il suffit d'ajouter les pods nécessaires à la Podfile
, non? Mais peu importe ce que j'essaie, les modules FBSDK natifs ne semblent jamais être inclus. J'ai essayé une foule de différents Podfile
s, certains avec use_framework!
et pod 'Bolts'
, certains avec seulement pod 'FBSDKCoreKit'
. C'est celui que je suis actuellement sur:
target 'FacebookPods' do
pod 'FBSDKCoreKit'
pod 'FBSDKShareKit'
pod 'FBSDKLoginKit'
target 'FacebookPodsTests' do
inherit! :search_paths
end
end
Mais quand je lance mon application de test et essayer de faire quoi que ce soit avec le module react-native-fbsdk
je reçois des erreurs sur les différents modules se plaignent d'être natifs non défini. Voici mon fichier index.ios.js
, en essayant d'accéder au LoginManager
:
import React, {Component} from "react"
import {AppRegistry, Text} from "react-native"
import {LoginManager} from "react-native-fbsdk"
export default class FacebookPods extends Component {
componentWillMount() {
LoginManager.logInWithReadPermissions(["email"])
.then(() => console.log("Success!"))
.catch((err) => console.log("Failure!", err))
}
render() {
return <Text>Hello World</Text>
}
}
AppRegistry.registerComponent("FacebookPods",() => FacebookPods)
Mais cela jette l'erreur dans undefined is not an object (evaluating 'LoginManager.logInWithReadPermissions'
FBLoginManager.js
. Une inspection plus approfondie de NativeModules montre qu'aucun module FBSDK natif n'est inclus. Je reçois aussi les avertissements suivants au lancement:
2017-07-13 19:50:19.006 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "RCTFBLikeView" does not exist
2017-07-13 19:50:19.007 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "RCTFBLoginButton" does not exist
2017-07-13 19:50:19.008 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "RCTFBSendButton" does not exist
2017-07-13 19:50:19.009 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "RCTFBShareButton" does not exist
Alors oui, je suis à une perte complète. Dans mon esprit, il suffit d'ajouter les cosses devrait être suffisant pour inclure les cadres. J'ai parcouru les interwebs pour toutes les étapes supplémentaires que j'ai peut-être manqué, mais il n'y en a pas beaucoup, sauf quelques problèmes sur le projet react-native-fbsdk
qui ont depuis été supprimés.
Je ne connais pas très bien les modules, mais avez-vous besoin d'un chemin? 'pod 'FacebookPods',: path => 'chemin/vers/lib /'' De ma mémoire, Facebook m'avait installé le SDK dans '~/Documents' donc ça peut être un problème avec le téléchargement/la recherche de la lib –
Je crois que les modules 'FBSDK * Kit' sont également spécifiés dans le paquet' react-native-fbsdk', ce qui serait bien. Mais l'idée est d'éviter de télécharger et d'installer le SDK en dehors du projet et de glisser manuellement dans les frameworks. Avez-vous réussi à utiliser CocoaPods? – wjrrrl
Non, nous venons de faire l'installation manuelle. Cette question parle d'installer le FBSDK normal avec des pods https://stackoverflow.com/a/30847447/3473220 Pas sûr comment RN le complique bien que –