我正在尝试让facebook集成到我的一个应用程序中。我刚刚阅读了文档here,其中说:
“首先,要在本地计算机上生成密钥散列,请针对Android调试密钥库运行Java的keytool实用程序(应该在控制台的路径上)。”
这让我非常困惑,这是否意味着我的应用程序(+facebook集成)只能在我的“本地计算机”上运行-即在我的PC上运行的仿真器?如果是这样的话,有没有什么方法可以为我的android手机(通过USB连接到我的PC )获得相应的“密钥散列”?因为我更愿意在我的手机上测试我的应用程序,而不是模拟器。
发布于 2013-04-08 00:01:27
当你创建一个将被上传到Google Play商店的Android应用程序时,你会生成一个唯一的标识符,该标识符将允许谷歌以及安装你的应用程序的每一部手机知道它是你开发的。这就像你自己的秘密密码,你不应该与任何人分享。如果一个恶意的开发者创建了你的应用程序的“更新”,并且以某种方式将它分发给用户,任何试图安装它的用户都会收到一条错误消息,因为恶意的假升级不会是用你的私有密钥库创建的。当您发布您的应用程序时,您必须创建此keystore,并使用它生成Facebook密钥散列,这就是他们在这里所指的密钥散列。
但是,当您正在开发并且还没有准备好对外发布时,在默认情况下,Eclipse将使用默认的"debug“密钥库来构建您的应用程序。您引用的说明告诉您如何使用您的调试密钥库生成Facebook散列。一旦你这样做了,每当你用调试密钥库构建你的应用程序并运行它时,Facebook将允许它使用SDK连接,只要你已经将密钥散列粘贴到Facebook开发人员控制台中。无论你是在电脑上还是手机上运行该应用程序,它都会运行并与Facebook集成连接。
当您准备好发布时,您必须生成一个全新的keystore,在该文件上再次运行该工具,并像以前一样将该密钥散列上传到Facebook。然后,你的应用程序可以在任何人的手机上运行,并能够连接到Facebook,前提是你用新的密钥库构建它。
https://stackoverflow.com/questions/15836864
复制相似问题