为了账号安全,请及时绑定邮箱和手机立即绑定

Android Facebook集成无效密钥哈希

Android Facebook集成无效密钥哈希

扬帆大鱼 2019-07-26 15:14:29
Android Facebook集成无效密钥哈希在我的应用程序中我需要获取facebook的数据.。我是这样做的:我创造了应用程序ID..它成功登录,但在注销后,我登录,然后它给我:我做错什么了?请建议我使用FacebookSDK..我在手机里安装了Facebook.。这在没有安装内置Facebook应用程序的模拟器中运行良好。这是我的密码:if (FB_APP_ID == null) {     Builder alertBuilder = new Builder(this);     alertBuilder.setTitle("Warning");     alertBuilder.setMessage("A Facebook Applicaton ID must be " +                             "specified before running this example: see App.java");     alertBuilder.create().show();}// Initialize the dispatcherDispatcher dispatcher = new Dispatcher(this);dispatcher.addHandler("login", LoginHandler.class);dispatcher.addHandler("stream", StreamHandler.class);dispatcher.addHandler("logout", LogoutHandler.class);// If a session already exists, render the stream page// immediately. Otherwise, render the login page.Session session = Session.restore(this);if (session != null) {     dispatcher.runHandler("stream");}else {     dispatcher.runHandler("login");}
查看完整描述

3 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

生成哈希键是错误的。您可以使用两个步骤获得哈希键。一个是通过命令提示符。另一个是通过编码。哈希键通过命令提示符第一次工作。我不知道原因。我也有同样的问题。所以我通过编程来尝试。

遵循以下步骤:

粘贴以下代码oncreate().

try {
    PackageInfo info = getPackageManager().getPackageInfo(
                "com.example.packagename", 
                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) {}

使用上面代码中的包名修改“com.example.Packagename”(您可以在AndroidManifest文件中找到您的包名)。

运行你的应用程序。转到粘贴上述代码的活动。在逻辑猫搜索“KeyHash”。您可能会找到一个密钥哈希。复制键哈希并转到Facebook应用程序仪表板页面。进入设置,并输入详细信息,如在下面的图像。

一旦你完成了上面的步骤。重新启动应用程序,您现在可以登录到Facebook。有关键散列的详细信息,请检查链接

如果在“设置”页中添加了错误信息,则意味着会出现一些错误。所以使用正确的信息。此外,如果公共(您以外的)需要使用您的应用程序,则意味着您需要启用该权限。(change "yes" in the "Status & Review" next to setting).



查看完整回答
反对 回复 2019-07-27
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

我也遇到了同样的问题,我确信这是因为很小的错误,是的!我找到了解决办法。

生成时调试在我的电脑中,我输入了系统的密码,但密码应该是-
输入keystore密码:“android”
这是我案子中唯一的问题。

-因为调试键哈希,使用这个命令-

keyTool-exportcert-别名android调试器-keStore~/.android/调试器.keystore\OpenSSSHA 1-二进制OpenSSL Base 64

输入密钥存储密码:‘Android’

-产生释放键哈希,使用这个命令-

keytool-exportcert-别名“keystore的别名”-keystore“您在签署应用程序时到密钥存储库的路径”

执行此命令后提供密钥存储密码。



查看完整回答
反对 回复 2019-07-27
  • 3 回答
  • 0 关注
  • 367 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信