每次获取不同App的Hash String |短信检索 API

Posted

技术标签:

【中文标题】每次获取不同App的Hash String |短信检索 API【英文标题】:Getting different App's Hash String every time | SMS Retriever API 【发布时间】:2019-08-24 23:51:12 【问题描述】:

我正在我的 android 应用中集成 SMS Retriever API

我按照以下文档生成应用的哈希字符串:https://developers.google.com/identity/sms-retriever/verify#computing_your_apps_hash_string

以下是生成哈希的方法:1) 命令

keytool -exportcert -alias MyAndroidKey -keystore MyProductionKeys.keystore | xxd -p | tr -d "[:space:]" | echo -n com.example.myapp `cat` | sha256sum | tr -d "[:space:]-" | xxd -r -p | base64 | cut -c1-11

2) AppSignatureHelper 类

我为不同的方法获得了不同的哈希

prodRelease(使用命令) - R2J*******N prodRelease(使用 AppSignatureHelper 类) - ROI *******6

还有不同的哈希用于不同的构建变体

prodRelease:ROI*******6 prodDebug:CAz*******N devRelease: R2J*******N devDebug: ROI*******6 (同 prodRelease)

我使用带有 prodRelease 哈希的 SMS 模板测试了我的应用程序,即 ROI*******6。它工作得很好,然后两天后,它停止工作。我调试,现在哈希再次不同,现在它适用于不同的哈希R2J*******N

我希望哈希值相同,因为它取决于应用程序的包 ID。 那么为什么不同的哈希值以及哪个哈希值要正确,或者它每次都会改变,我必须不断更改服务器中的 SMS 模板? 要么 还有其他更好的方法来确定哈希吗?

【问题讨论】:

即使我也面临同样的问题...... 面临同样的问题 【参考方案1】:

每个构建变体都需要一个哈希值。

1- 调试 2- 发布 3- 如果您在 google play console 中签署您的应用程序,则需要另一个,因为上传应用程序时 google 会更改哈希

【讨论】:

以上是关于每次获取不同App的Hash String |短信检索 API的主要内容,如果未能解决你的问题,请参考以下文章

获取/发送短信时如何获取 GPS 坐标? [复制]

Android 免费短信获取国家列表和国家代码

通过 contentObserver 在外出时获取短信号码

wemall app商城源码Android短信监听接收器

自动获取短信验证码

php 给app写短信验证码 使用memcache缓存验证码