Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 服务器错误:[code]1675030[消息]:执行查询时出错_Java_Android_Facebook_Facebook Login - Fatal编程技术网

Java 服务器错误:[code]1675030[消息]:执行查询时出错

Java 服务器错误:[code]1675030[消息]:执行查询时出错,java,android,facebook,facebook-login,Java,Android,Facebook,Facebook Login,我正在android中使用Facebook登录。 代码: callbackManager = CallbackManager.Factory.create(); LoginButton loginButton = (LoginButton) this.findViewById(R.id.login_button); loginButton.setReadPermissions("email", "public_profile"); loginButton.register

我正在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
        }
    });
callbackManager=callbackManager.Factory.create();
LoginButton LoginButton=(LoginButton)this.findViewById(R.id.login_按钮);
setReadPermissions(“电子邮件”、“公共档案”);
registerCallback(callbackManager,newfacebookcallback()){
@凌驾
成功时公共无效(LoginResult LoginResult){
//应用程序代码
println(Log.ASSERT,“FB”,“inicio会话”);
}
@凌驾
公开作废{
Log.println(Log.ASSERT,“FB”,“操作编号completada”);
//应用程序代码
}
@凌驾
public void onError(facebook异常){
Log.println(Log.ASSERT,“FB”,“Errro de sesion”);
异常。printStackTrace();
//应用程序代码
}
});
但总是会出现以下错误:

服务器错误:[code]1675030[消息]:执行查询时出错。 [额外]:执行操作“ProxyAuthAppLoginQuery”时出错:位于 Query.proxy\u auth\u app\u login:解析字段失败。W/系统错误:
在 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:5423) W/System.err:at android.app.ActivityThread.deliverResults(ActivityThread.java:3401) W/System.err:at android.app.ActivityThread.handleSendResult(ActivityThread.java:3448) W/System.err:at 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.os.Looper.loop(Looper.java:149)W/System.err:at main(ActivityThread.java:5061) W/System.err:at java.lang.reflect.Method.invokenactive(本机) 方法)W/System.err:at java.lang.reflect.Method.invoke(Method.java:515)W/System.err:at 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(本机方法)

我添加了以下权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

我找到了解决方案,当你的应用程序中没有evaluate用户时,就会发生这种情况

进入你的面板应用程序 选择Rol

并添加测试用户,当您尝试使用测试用户登录时,应用程序执行不会失败


@Danial的回答正确,但我想补充一些。只有在应用程序处于开发阶段时,才会出现此类错误。按照此操作并选择您的应用程序。那么你可以在这里做两件事。从角色选项卡,您可以只允许登录您的朋友,或者选择应用程序审查并将您的
应用程序公开
,然后任何人都可以登录。

在其他情况下也会返回此错误-即使您的应用程序公开或您被列为测试人员

再次检查您的


正在解析为正确的Facebook应用程序ID,特别是如果您使用gradle build动态指定它,而不是在strings.xml中对其进行硬编码。

我遇到了类似的问题,因为Firebase UI正在指定
android:value
。我就是这样解决的:

    <application
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme.Base">

    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        tools:replace="android:value"
        android:value="@string/facebook_app_id" />
<acitivity
...
</activity>
...


除其他答案外,请检查用于登录的帐户的电子邮件是否经过验证。

facebook上的文档不正确。我必须添加所有3个默认权限才能使其正常工作

loginButton.setReadPermissions("email", "public_profile", "user_friends");
在strings.xml中添加字符串资源“facebook\u application\u id”

将应用程序ID替换为您的facebook应用程序ID

<string name="facebook_application_id" translatable="false">APP_ID</string>
APP\u ID

以上所有答案对我都没有帮助,但当您使用此命令时,我帮了忙

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
获取您在facebook配置中输入的密钥哈希

它会要求您输入密码,起初我没有设置任何密码,所以当我输入
android
作为密码时,问题发生了。成功了

请检查开发者模式的状态。它必须是“活的”。
首先,你需要为自己的facebook项目添加隐私url,你想测试facebook登录或其他。。。。然后启用开发者模式(打开)

在我的例子中,生成的哈希键是错误的,因为我使用了错误的OpenSSL。
我使用的是openssl-0.9.8k_X64.zip,而不是openssl-0.9.8e_X64.zip,这给我产生了一个错误的散列密钥,导致了这个问题,希望它能帮助一些我花了8个小时试图解决这个问题的人。

在我的例子中,问题是错误生成的密钥散列,需要在facebook应用程序页面上提交 在本文中找到了解决方案

手动检查密钥哈希值-您可以打印发送到Facebook的密钥哈希值,并在应用程序仪表板中使用该值。在主活动中对onCreate()进行以下更改:

try 
{
    PackageInfo info = getPackageManager().getPackageInfo(
                        "com.facebook.samples.loginhowto",
                        PackageManager.GET_SIGNATURES);

    for (Signature signature : info.signatures) {
        MessageDigest md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
    }
} catch (NameNotFoundException e) {  


} catch (NoSuchAlgorithmException e) {  

}
问题日志:服务器错误:[code]1675030[消息]:执行查询时出错

以及此特定问题的准确解决方案(执行查询时出错)
是通过更新访问查询来回答的。
setReadPermissions(“电子邮件”、“公共档案”、“用户朋友”)

  • 查找facebook登录按钮的调用位置
  • 然后将按钮的ReadPermission设置为“电子邮件”、“公共档案”、“用户朋友”
  • 图像参考

    问题日志:应用程序
    facebookLogin.setReadPermissions("email", "public_profile", "user_friends");
    
    keytool -printcert -jarfile app-debug.apk | openssl sha1 -binary | openssl base64