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>
ログをチェックして、何かが表示されているかどうか確認してください。 –
何も言わない。単一のものではありません –
FacebookExceptionのgetMessage()などをトーストしようとしました –