我正在使用Google Maps Android API,但遇到了一些问题。
我正在使用Android Studio(在.android / keystore.jks创建一个)签署apk。我也选择“ release”作为输入。我已经使用了命令
keytool -list -v -keystore C:\Users\Toshiba\.android\keystore.jks
将SHA1指纹从密钥库中取出。
SHA1是正确的,但该地图未显示在已签名的APK上。它显示在调试APK中。
将keytool与发行版密钥库(keystore.jks)结合使用会得到以下信息:
SHA1: 33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX
调试一个很好用(我在Google API控制台中添加了2个)
33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX;yac.breakingpoint
7C:28:61:5B:C3:4A:5C:50:44:AA:FD:58:69:E9:70:91:XX:XX:XX:XX;yac.breakingpoint
XX被涂黑。
keytool说它正在使用SHA256withRSA作为调试和发布密钥库的签名算法。
我究竟做错了什么?
更新因此,我尝试了一个新的API密钥,清理项目并重建它,新的密钥库-仍无法在发行版中运行...调试很好!
更新2仍然找不到有效的解决方案...帮帮我!
UPDATE 3好吧,使用带有构建类型调试功能的签名APK使它正常工作。提取CERT.RSA并运行keytool -printcert -file ./CERT.SA
。获得与发布版本类型相同的结果。在发行中,它不起作用!
更新4这是我做的另一种尝试:
/build
文件夹位于文件中,因此不会被.gitignore
提交。那没起效。
更新5我的一个朋友试图重现此问题。使用android studio时,他有完全相同的问题。可能是Android Studio错误?
您有两个google_maps_api.xml文件
此文件夹中的一个:
app / src /调试/ res / values
此文件夹中的其他:
app / src /发布/ res / values
但是可能只有调试一个包含您的API密钥。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句