使用 facebook 登录时出错
error in login with facebook login
我正在尝试在我的应用程序中使用 Facebook 登录。我已经导入了 sdk 并在我的 facebook 开发者帐户上设置了所有正确的设置。但是现在,当我尝试使用 Facebook 登录时,它会将我重定向回登录 activity 而不是主 activity。
Facebook 按钮在我的 xml 文件中导入如下:
<com.facebook.login.widget.LoginButton
android:id="@+id/fb_login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="30dp"
android:layout_marginBottom="30dp" />
这是我启动 activity 的 oncreate 函数的样子:
FacebookSdk.sdkInitialize(this);
callbackManager = CallbackManager.Factory.create();
LoginManager.getInstance().registerCallback(callbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// user successfully logged in
// Create login session
session.setLogin(true);
// Launch main activity
Intent intent = new Intent(LoginActivity.this,
MainActivity.class);
startActivity(intent);
finish();
}
@Override
public void onCancel() {
Toast.makeText(getApplicationContext(), "You cancelled while logging in, please login to gain access.", Toast.LENGTH_SHORT).show();
}
@Override
public void onError(FacebookException exception) {
Toast.makeText(getApplicationContext(), "An error appeared, please try again.", Toast.LENGTH_SHORT).show();
}
});
setContentView(R.layout.activity_login);
当我点击 facebook 登录按钮时,我被重定向到 facebook 应用程序,当我成功登录时,facebook 应用程序请求许可,但我只是被重定向到登录 activity。
我已经找到问题所在了。
我忘记了一行在您登录后实际启动任何操作的代码,它是:
LoginManager.getInstance().logInWithReadPermissions(这, Arrays.asList("public_profile", "user_friends", "email"));
您应该在设置登录管理器的行为后输入此内容。
我正在尝试在我的应用程序中使用 Facebook 登录。我已经导入了 sdk 并在我的 facebook 开发者帐户上设置了所有正确的设置。但是现在,当我尝试使用 Facebook 登录时,它会将我重定向回登录 activity 而不是主 activity。
Facebook 按钮在我的 xml 文件中导入如下:
<com.facebook.login.widget.LoginButton
android:id="@+id/fb_login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="30dp"
android:layout_marginBottom="30dp" />
这是我启动 activity 的 oncreate 函数的样子:
FacebookSdk.sdkInitialize(this);
callbackManager = CallbackManager.Factory.create();
LoginManager.getInstance().registerCallback(callbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// user successfully logged in
// Create login session
session.setLogin(true);
// Launch main activity
Intent intent = new Intent(LoginActivity.this,
MainActivity.class);
startActivity(intent);
finish();
}
@Override
public void onCancel() {
Toast.makeText(getApplicationContext(), "You cancelled while logging in, please login to gain access.", Toast.LENGTH_SHORT).show();
}
@Override
public void onError(FacebookException exception) {
Toast.makeText(getApplicationContext(), "An error appeared, please try again.", Toast.LENGTH_SHORT).show();
}
});
setContentView(R.layout.activity_login);
当我点击 facebook 登录按钮时,我被重定向到 facebook 应用程序,当我成功登录时,facebook 应用程序请求许可,但我只是被重定向到登录 activity。
我已经找到问题所在了。 我忘记了一行在您登录后实际启动任何操作的代码,它是:
LoginManager.getInstance().logInWithReadPermissions(这, Arrays.asList("public_profile", "user_friends", "email"));
您应该在设置登录管理器的行为后输入此内容。