2017-05-11 18 views
0

他のアプリで既に使用していたアプリでFacebookのログインを実装しようとしています。だから、このアプリでは、私がログインしようとすると、ログインのコールバックは常にエラーを与えていると私はそれを引き起こしているか分からない。私のコードがどこに間違っていたら私を修正してください。FacebookのAndroid SDKのログインエラー

public class LoginActivity extends AppCompatActivity { 

Button login; 
LoginButton loginButton; 
CallbackManager callbackManager; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    FacebookSdk.sdkInitialize(getApplicationContext()); 
    AppEventsLogger.activateApp(this); 
    setContentView(R.layout.activity_login); 
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 

    login = (Button) findViewById(R.id.login); 
    login.setVisibility(View.GONE); 

    loginButton = new LoginButton(this); 
    loginButton.setReadPermissions("public_profile"); 

    AccessToken accessToken = AccessToken.getCurrentAccessToken(); 
    if (accessToken != null) { 
     startActivity(new Intent(LoginActivity.this, MainActivity.class)); 
     finish(); 
    } 

    new Handler().postDelayed(new Runnable() { 
     @Override 
     public void run() { 
      login.setVisibility(View.VISIBLE); 
     } 
    }, 2000); 

    login.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      loginButton.performClick(); 
     } 
    }); 

    callbackManager = CallbackManager.Factory.create(); 
    LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() { 
     @Override 
     public void onSuccess(LoginResult loginResult) { 
      // App code 
      startActivity(new Intent(LoginActivity.this, MainActivity.class)); 
      finish(); 
     } 

     @Override 
     public void onCancel() { 
      // App code 
      Log.d("LoginActivity", "Cancelled"); 
      Toast.makeText(getApplicationContext(), "Cancelled", Toast.LENGTH_SHORT).show(); 
     } 

     @Override 
     public void onError(FacebookException exception) { 
      // App code 
      Log.d("LoginActivity", "Error Occurred"); 
      Toast.makeText(getApplicationContext(), "Error Occurred", Toast.LENGTH_SHORT).show(); 
     } 

    }); 

} 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    callbackManager.onActivityResult(requestCode, resultCode, data); 
} 

} 

そして、私は、このようなのAppIDとしての私のマニフェストに必要なものをも追加していると

<activity 
     android:name="com.facebook.CustomTabActivity" 
     android:exported="true"> 
     <intent-filter> 
      <action android:name="android.intent.action.VIEW" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <data android:scheme="@string/fb_login_protocol_scheme" /> 
     </intent-filter> 
</activity> 
+0

ログをチェックして、何かが表示されているかどうか確認してください。 –

+0

何も言わない。単一のものではありません –

+0

FacebookExceptionのgetMessage()などをトーストしようとしました –

答えて

1

アプリはアプリを公開するために、開発モードであるので、これは起こります:

関連する問題