我在 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:[code] 1675030 [message]:执行查询时出错。 [额外]:执行操作“ProxyAuthAppLoginQuery”时出错:在 Query.proxy_auth_app_login:无法解析字段。 W/System.err:
在 com.facebook.login.LoginManager.onActivityResult(LoginManager.java:190) W/System.err:在 com.facebook.login.LoginManager\(1.onActivityResult(LoginManager.java:159) W/System.err:在 com. facebook.internal.CallbackManagerImpl.onActivityResult(CallbackManagerImpl.java:82) W/System.err:在 com.procibernetica.moca.MainActivity.onActivityResult(MainActivity.java:130) W/System.err:在 android.app.Activity。 dispatchActivityResult(Activity.java:5423) W/System.err:在 android.app.ActivityThread.deliverResults(ActivityThread.java:3401) W/System.err:在 android.app.ActivityThread.handleSendResult(ActivityThread.java:3448) W/System.err:在 android.app.ActivityThread.access\)1300(ActivityThread.java:138) W/System.err:在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284) W/System.err : 在 android.os.Handler.dispatchMessage(Handler.java:102) W/System.err:
在 android.os.Looper.loop(Looper.java:149) W/System.err: 在 android.app.ActivityThread.main(ActivityThread.java:5061) W/System.err: 在 java.lang.reflect.Method .invokeNative(Native Method) W/System.err:在 java.lang.reflect.Method.invoke(Method.java:515) W/System.err:在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run( ZygoteInit.java:787) W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:603) W/System.err: at dalvik.system.NativeStart.main(Native Method)
我添加了以下权限。
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
原文由 Daniel ORTIZ 发布,翻译遵循 CC BY-SA 4.0 许可协议
我找到了解决方案,当您没有在您的应用程序中评估用户时,就会发生这种情况。
在您的面板 App Select Rol 中输入
并添加测试用户,当您尝试使用测试用户登录时,应用程序会正常执行