2016-07-28 20 views
0

私はReact NativeのfbsdkでAccessTokenを取得する能力に問題があります。undefinedはオブジェクトではありません(FBSDKAccessTokenInterface.getCurrentAccessTokenを評価する)

のFacebookで示唆したように、私はコアを呼び出しています:

const FBSDKCore = require('react-native-fbsdkcore'); 
const { 
    FBSDKAccessToken, 
} = FBSDKCore; 

そして、もう一つのシナリオでは、私はSOにここに述べられてsimilair質問により示唆されるようにログにトークンを書いてみます。これは私にredscreenを与える

<View> 
    <View style={{flex: 1, alignItems: 'center', padding: 50, marginTop: 250}}> 
    <View> 
     <LoginButton 
     publishPermissions={["publish_actions"]} 
     onLoginFinished={ 
      (error, result) => { 
      if (error) { 
       alert("login has error: " + result.error); 
      } else if (result.isCancelled) { 
       alert("login is cancelled."); 
      } else { 
       FBSDKAccessToken.getCurrentAccessToken((token)=> { 
        console.log(token); 
        });       
       Actions.Navigator() 
      } 
      } 
     } 
     onLogoutFinished={() => { 
      alert("logout.")}}/> 
    </View> 
    </View> 
</View> 

は「未定義のアプリの他の部分のsimilair何かをやってのけるしようと

(FBSDKAccessTokenInterface.getCurrentAccessTokenを評価する)目的ではない、もちろん最初のconst FBSDKAccessTokenを定義し、その後、として(FBSDKCoreの一部であるべき)ユーザーIDを呼び出す:

<Text style={{fontSize: 18, color:colors.General.navtext}}>{FBSDKAccessToken.userID}</Text> 

、私はそれがログインしているユーザーのユーザーIDを返すために信じられて何も、利回りない。また、私はaccesstokenを書き出すしよう。同じで場所:

<Text style={{fontSize: 18, color:colors.General.navtext}}>{FBSDKAccessToken.getCurrentAccessToken()}</Text> 

私は以前と同じ赤い画面が表示されます。

私はライブラリのリンクを調べようとしましたが、さらに問題が発生しました。

これから、私はかなり孤立しており、何が間違っているのかに関するフィードバックを本当に感謝しています。

+0

プロジェクトにライブラリをリンクしていることを確認か? FBSDKパッケージのようなサウンドがプロジェクトに正しく追加されず、定義されていないエラーが発生します。 –

+0

こんにちは@MikeGrabowskiは私を助けようとしてくれてありがとう..よく私はそれもリンクの問題だと思っていましたが、私はそれを解決する方法がわかりません..私はリンクについてのドキュメントを読んで、それはリンクされていると言いますが、リンクされていない可能性があります。私はマックbtwを使用していないよ、私はubuntuを持っています。 –

+0

私が知る限り、FBSDKは 'rnpm'でうまく動作しません。 Discord(アプリケーション)がインストールされている場合は、そこに私を見つけることができ、それをデバッグしようとすることができます:) –

答えて

0

FBSDKCoreにも問題がありました。反応-ネイティブfbsdk

const FBSDK = require('react-native-fbsdk'); 
const { 
    AccessToken, 
} = FBSDK; 

を使用して、それを修正あなたがFacebookの言及これらのステップをダブルチェックしなかった:

  • のFacebook SDKのフレームワークは、〜/書類/ FacebookSDKにインストールされていることを確認してください。
  • ビルドターゲットのビルドフェーズの[リンクバイナリライブラリ]セクションにFBSDK [Core、Login、Share] Kit.frameworkが表示されていることを確認してください。
  • 〜/ Documents/FacebookSDKがビルドターゲットのビルド設定のフレームワーク検索パスにあることを確認してください。

https://github.com/facebook/react-native-fbsdk

+0

コメントに感謝します。私はすぐにそれを試してみようとして元に戻って:D –

関連する問題