2017-10-10 20 views
0

私はそれが常に関数呼び出しを非難するFacebookSdkを初期化しようと、私はビルド時に/それはによる誤差」で終了自分のアプリケーションを実行すると:SDKが初期化されていない、最初のFacebookSdk.sdkInitialize()を呼び出していることを確認してくださいAndroidアプリケーションでFacebookログインを実装する方法は?

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    FacebookSdk.setApplicationId("165020910744675"); 
    FacebookSdk.sdkInitialize(this); 
    setContentView(R.layout.activity_main); 

    callbackManager = CallbackManager.Factory.create(); 
    loginButton = (LoginButton) findViewById(R.id.login_button); 
    loginButton.setHeight(100); 
    loginButton.setTextColor(Color.WHITE); 
    loginButton.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null); 
    loginButton.setCompoundDrawablePadding(0); 


    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { 
     @Override 
     public void onSuccess(LoginResult loginResult) { 
      Log.d(TAG,"success!!! go home."); 
     } 

     @Override 
     public void onCancel() { 
      Log.d(TAG,"cancel!!! don't go home."); 
     } 

     @Override 
     public void onError(FacebookException error) { 

     } 
    }); 

我々はFacebookSdk.sdkInitialize()関数を(FBのAPIが言うように)削除した場合、それは同じエラーが発生し

+4

[facebook sdk 4.7を使用してアンドロイドでFacebookのログインを実装する方法](https://stackoverflow.com/questions/33584031/how-to-implement-facebook-login-in-android-using-facebook- sdk-4-7) – InsaneCat

答えて

0

SDKのアップグレードに関するドキュメントから:。

のFacebook SDKは現在、自動で初期化されますアプリケーションの開始。Faceboを使用している場合SDKの初期化完了時にコールバックを必要としないため、FacebookSDK.sdkInitializeへの呼び出しを削除できるようになりました。コールバックが必要な場合は、コード内で手動でコールバックを呼び出す必要があります。 FBSDKShareLinkContentのタイトル、説明、キャプションおよび画像フィールドは推奨されているSDK 4.22でhttps://developers.facebook.com/docs/android/upgrading-4x

を参照してください。使用方法から削除することを検討してください。

関連する問題