Facebook SDKを使用するアンドロイドアプリケーションをビルドしています。私は現在ログイン・フローを処理するためにLoginManagerを使用しています。 私は既にFacebookのSDKをApplications onCreateメソッドで初期化しました。ログアウト後にログインしていないため、ログインしていません。
public class DummyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(this);
AppEventsLogger.activateApp(this);
}
}
は、私は、セットアップのような私のLoginActivityもあります
public class LoginActivity extends AppCompatActivity {
@Bind(R.id.custom_login_button)
Button mCustomFacebookButton;
private CallbackManager callbackManager;
private LoginManager mLoginManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
callbackManager = CallbackManager.Factory.create();
mLoginManager = LoginManager.getInstance();
mLoginManager.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
startActivity(new Intent(LoginActivity.this, MainActivity.class));
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
error.printStackTrace();
}
});
mCustomFacebookButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mAuthProgressDialog.show();
mLoginManager.logInWithReadPermissions(LoginActivity.this
, Arrays.asList("user_events", "email" ,"user_friends"));
}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
}
}
フローは、ログインボタンが押されたら、それはMainActivityを開始し、その活動にとSettingsActivityがあるということですログアウトボタン LoginManager.getInstance().logOut();
をクリックするとログインアクティビティに戻ります。 私が直面している問題は、いったんログアウトが呼び出されると、私は再びログインできず、私のAccessTokenは常にnullであるということです。ですから、本質的に私はLoginActivityに執着しています。
ビルドファイルを削除してプロジェクトを再インポートすると、ビルドファイルが削除された後、もう一度ログアウトしてこの問題が再開するまでうまくいきます。 Android Studio 2.1、ツールを23.0.3に、SDKツールを25.1.3にアップデートして以来、この問題が発生しています。
-edit:その再インポートして自分自身を修正しませもはや