启用Google应用签名后,生成的11个字符散列代码不起作用

本教程将介绍启用Google应用签名后,生成的11个字符散列代码不起作用的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

启用Google应用签名后,生成的11个字符散列代码不起作用 教程 第1张

问题描述

我正在尝试实现Sms Retriever在没有任何SMS权限的情况下从用户手机获取OTP。

最初,我使用以下命令生成了带有密钥库(.jks)的散列密钥
密钥工具如所述here

当我使用此密钥库签署APK并使用此HashKey接收SMS时,它工作正常。

但是在将应用上载到Google Play应用商店后,短信接收器无法正常工作。我们已启用Google应用签名来对应用进行签名。我发现Google将删除上传的签名,这是使用Google应用程序签名的应用程序的密钥,如here所述。因此,我尝试使用别名将Google应用程序签名证书添加到上传的密钥库中,以创建新的哈希键。但是我无法使用别名将应用程序签名证书添加到密钥库中。

有什么建议为短信检索器生成带有APP签名证书的HashKey?

推荐答案

当谷歌的应用签名启用时,将生成不带别名的11字符哈希

即SMS Retrieve API

以下命令从应用程序的
生产密钥库:

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

在上面的命令中,哈希是基于MyAndroidKey别名(-alias MyAndroidKey)生成的。

尝试为启用的Google APK Sign生成不带别名的哈希

keytool -exportcert -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

好了关于启用Google应用签名后,生成的11个字符散列代码不起作用的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。