0

我的 Logcat 中的错误是:

02-12 10:04:54.240: E/SurfaceFlinger(521): 无法打开 /sys/power/wait_for_fb_sleep 或 /sys/power/wait_for_fb_wake 02-12 10:04:54.250: D/libEGL(521): egl .cfg 未找到,使用默认配置 02-12 10:04:54.260: D/libEGL(521): 加载 /system/lib/egl/libGLES_bst.so 02-12 10:04:54.260: W/PGA(521) : eglGetProcAddress: "eglGetRenderBufferANDROID" 未找到 02-12 10:04:55.260: E/HdIpc(521): 连接失败 err = -1 errno = 110 (ETIMEDOUT)。每个进程只记录一次超时日志 02-12 10:04:55.260: E/PGA(521): 无法连接到主机,err = -1,正在重试... 每个进程只记录一次以避免淹没原木。

当我的手机显示该错误并且当我按下 fb 页面右上角的确定按钮时。我还生成了哈希键并将其放入仪表板。当我从我的暴民中卸载 fb 应用程序时,它运行良好。但不适用于 fb 应用程序。请帮我

4

2 回答 2

0

有时,您生成的密钥哈希并不完全正确。显然(当然未经证实),它与 JRE 1.7 有关。

遵循以下两种解决方案之一,您应该一切顺利。

解决方案1:

试试这个链接:http ://www.helloandroid.com/tutorials/using-facebook-sdk-android-development-part-1 。我发现使用 Facebook 获取哈希键的方法并不总是像宣传的那样有效。但是,此链接具有获取哈希键的不同方法,并且几乎总是有效。

解决方案2:

话虽如此,我总是发现最简单的事情就是让 Facebook SDK 告诉你你的 Hash Key 是什么。这要简单得多,不应该超过几分钟。

第 1 步:在您的 Facebook SDK 中,找到Util.java类。在那,改变这个:

private static boolean ENABLE_LOG = false;

到:

private static boolean ENABLE_LOG = true;

第 2 步:创建一个的签名 APK,传输到您的设备并安装。如果已经安装,自然会提示。

第 3 步:在您的 DDMS (Logcat) 运行并且您的设备连接到计算机的情况下,运行应用程序并继续寻找密钥不匹配警告。该警告具有实际的哈希键。复制该密钥,转到您的 Facebook 开发人员页面并将新密钥添加到列表中。

于 2013-02-12T05:13:33.583 回答
0

这是密钥库哈希键的问题。您可以安装openSSL(下载适合您的系统,即 32 位/64 位,这很重要)并使用以下命令生成哈希密钥。这将解决问题。

 @echo Exporting keystore cert
keytool -exportcert -alias myalias -keystore mycert.keystore > mycert.keystore.bin

@echo Converting to sha1
C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl sha1 -binary mycert.keystore.bin > mycert.keystore.sha1

@echo Converting to base64
C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl base64 -in mycert.keystore.sha1 -out mycert.keystore.base64

@echo Done, Android hash key for Facebook app is:
C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl base64 -in mycert.keystore.sha1
于 2013-02-12T05:31:11.693 回答