我在android中使用Facebook登录。
代码:
callbackManager = CallbackManager.Factory.create();
LoginButton loginButton = (LoginButton) this.findViewById(R.id.login_button);
loginButton.setReadPermissions("email", "public_profile");
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// App code
Log.println(Log.ASSERT, "FB", "inicio session ");
}
@Override
public void onCancel() {
Log.println(Log.ASSERT, "FB", "OP NO completada");
// App code
}
@Override
public void onError(FacebookException exception) {
Log.println(Log.ASSERT, "FB", " Errro de sesion ");
exception.printStackTrace();
// App code
}
});
但总是得到以下错误:
SERVER_ERROR:代码1675030消息:执行查询时出错。extra:执行“ProxyAuthAppLoginQuery”操作时出错:在Query.proxy_auth_app_login:无法解析字段。W/System.err:
在com.facebook.login.LoginManager.onActivityResult(LoginManager.java:190) W/System.err: at com.facebook.login.LoginManager$1.onActivityResult(LoginManager.java:159) W/System.err: at com.facebook.internal.CallbackManagerImpl.onActivityResult(CallbackManagerImpl.java:82) W/System.err: at com.procibernetica.moca.MainActivity.onActivityResult(MainActivity.java:130) W/System.err: at android.app.Activity.dispatchActivityResult(Activity.java: at android.app.ActivityThread.deliverResults(ActivityThread.java:3401) W/System.err: at android.app.ActivityThread.handleSendResult(ActivityThread.java:3448) W/System.err: at android.app.ActivityThread.access$1300(ActivityThread.java:138) W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284) W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102) W/System.err:
在android.app.ActivityThread.main(ActivityThread.java:5061) (Looper.java:149) W/System.err:在java.lang.reflect.Method.invokeNative(本机方法) W/System.err:在System.err:at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:603) W/System.err: at dalvik.system.NativeStart.main(本机方法)
我已经添加了关注权限。
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
发布于 2017-01-27 21:35:02
我找到了解决方案,当你的应用程序中没有评估用户时,就会发生这种情况。
在您的面板中输入App Select Rol
并添加测试用户,当您尝试使用测试用户登录时,应用程序将正常执行
发布于 2017-05-15 14:51:13
facebook上的文档是不正确的。我必须添加所有3个默认权限才能使其正常工作。
loginButton.setReadPermissions("email", "public_profile", "user_friends");
发布于 2017-02-15 21:54:58
@Danial回答正确,但我想在其中添加更多。这种类型的错误只有当你的应用程序在开发中时才会出现。遵循此link并选择您的应用程序。然后你可以在这里做两件事。从Roles选项卡中,您可以只允许登录到您的朋友,或者选择应用审查,并使您的app public
,然后任何人都可以登录。
https://stackoverflow.com/questions/41861564
复制相似问题