4

最近我正在尝试为使用 facebook 的 android 应用程序获取我的哈希键。

问题是通过命令提示符的方法对我不起作用。

所以我找到了一个新的解决方案,它说你可以使用 facebook 消息来产生一个错误消息,它会给你哈希键本身。

他们说你应该设置 private boolean ENABLE_LOGGING = false; 在 facebook util.java 类中为 true。问题是我在应该启用日志记录的类中看不到。

谁能告诉我如何让 sdk 打印出 logcat 中的日志记录?

4

3 回答 3

3

To enable logging call the function Settings.addLoggingBehavior(LoggingBehavior behavior)

For example if you want to display Request information call

Settings.addLoggingBehavior(LoggingBehavior.REQUESTS);

You can check the class LoggingBehavior to debug other operations: https://developers.facebook.com/docs/reference/android/3.0/LoggingBehavior

于 2013-04-17T19:02:09.317 回答
2

通常,Android 库可以BuildConfig.DEBUG用来确定应用程序是否处于调试模式。但是,由于 Gradle 中的一个错误,Android 库总是在构建时DEBUG设置为 false。作为一种解决方法,有一个FacebookSdk.setIsDebugEnabled(boolean)方法,因此您可以直接从您的应用程序设置调试模式。这将启用来自 SDK 的调试日志记录。

您还可以使用FacebookSdk.addLoggingBehavior(LogginBehavior)设置日志记录行为,以启用不同类别消息的日志记录。请参阅 Android SDK 参考LoggingBehavior

这里

于 2016-03-31T07:33:59.260 回答
0

根据 Pascal 对类似线程的评论,这种方法自 2012 年 12 月以来就不起作用了。所以你必须使用命令提示符方法来获取正确的哈希键。

“自 2012 年 12 月以来,ENABLE_LOG 无法再更改 – Pascal Klein 2 月 24 日 3:41”这里是线程的链接:Android:Facebook 登录不起作用

我在命令提示符下尝试了几个命令,现在我终于找到了一个对我有用的命令。我希望它也对你有用。(我使用 x64 Windows 7)

下载此版本的 openssl:openssl for x64 Windows

在 C:\ 目录中创建一个名为openssl的文件夹。

解压openssl文件夹中的openssl zip。

转到keytool.exe的位置(C:\Program Files (x86)\Java...\bin)

在按住 shift 的同时,右键单击 bin 文件夹并打开命令提示符窗口。

输入以下内容:

keytool -exportcert -alias androiddebugkey -keystore "C:\Users\"username"\.android\debug.keystore" | "C:\openssl\bin\openssl" sha1 -binary | "C:\openssl\bin\openssl" base64 

用您的用户名替换“用户名”。当然没有引号)

您必须输入密码:android

您的哈希键应该出现。(如果您在密钥中获得“=”,请不要删除它。它是密钥的一部分)

祝您构建应用程序好运!

感谢C Abernathy发布此方法。

于 2013-03-28T20:54:40.403 回答