关于Android上Foursquare API的问题 - 密钥哈希不匹配

时间:2013-12-19 21:41:38

标签: android oauth foursquare android-keystore

我知道这个问题已经很长时间了,但我花了大约62个小时阅读了我发现的问题和答案,Foursquare页面上的文档和其他几个来源(例如Java网站)和找不到合适的答案。 我正在Eclipse中开发一个Android应用程序,我一直在尝试使用foursquare API登录并使签到不成功,直到现在。

问题在于:

  • 我使用的是库:FoursquareOAuthLibrary和EasyFoursquare;

  • 我在foursquare上注册了该应用,找不到任何解释页面参数用途的指南,除了显而易见的内容之外;

  • 无论我在“Android Key Hashes”参数中放置什么,它都会在应用程序屏幕上显示“Android密钥哈希与应用程序设置中指定的允许密钥哈希值不匹配”错误,虽然它根本没有登录logcat任何错误;

  • 我把两个密钥库的哈希值,MD5指纹和SHA1指纹(debug.keystore和我自己的密钥库)放在引用的参数中,没有任何效果;

所以,我想知道我应该在该参数中添加什么哈希(http://developementsolution.blogspot.in/日志上显示的“keyhash” MD5指纹,或者 SHA1指纹似乎是唯一一个看起来像https://github.com/foursquare/foursquare-android-oauth/blob/master/README.md上的示例的人。

我还想知道代码或库是否可能导致这种情况,如果是,我应该使用哪个库。

如果可能的话,我想知道app配置中的其他内容是什么意思(例如“Redirect URI(s)”,“Push secret”,“Push url”和“Push version”)。

2 个答案:

答案 0 :(得分:1)

SHA1哈希是必需的哈希

答案 1 :(得分:0)

您应该可以使用以下命令生成密钥:keytool -list -v -keystore mystore.keystore"Setting up your app"下的第3步)

如果您使用的是Foursquare Android OAuth库,则不需要重定向URI,因为该库会为您提供代码。需要重定向URI作为通用Foursquare OAuth process的一部分,但由于此库抽象了此过程,因此不需要URI。

只有在您使用我们的real-time APIs时才需要推送字段。