关于 使用百度地图SDK 打包签名后出现的 app-key错误的解决

 百度地图sdk在创建应用的时候是需要两个必要的参数 , 一个 发布版sha1值和一个包名.包名在此就不说了, 这个好说.


本人使用android studio,打包签名的文件为jks文件 


百度官网说的获取 sha1 的值的方式为 : 1, : cd .android (进入 .android目录,因为dubug.keystore在这个目录下....这个时候应该就都知道了吧) 2 : keytool -list -v -keystore debug.keystore(这个之后就获取到sha1 值 ,但是这个是错的 ,,,绝对的错, 因为debug.keystore本来就是调试的,所以出来的sha1其实是开发板 sha1 ,就是那个没有标星也就是不是必须填的 ), 因此你就没有配置 发布版,也就是正式版的 sha1 ,当你打包签名后进入应用中的sha1 是不对的,所以会出现 key错误的问题.


解决办法 : 提供 发布版的 sha1 值


以 as为例  : 1 : cd xxx   进入你放置.jks文件的目录, 这样才能使用keytool工具来获取. 

2: keytool -list -v -keystore xxx.jks

3: 根据此时的sha1值,然后在百度应用的后面点击设置 ,然后分别填好  开发板和发布版即可


至此

以下是一个简单的自动化脚本示例,将SDK依赖到空壳宿主APP进行打包: 1. 环境准备 在本地安装好Android SDK和Gradle,并配置好环境变量。 2. 创建空壳宿主APP 创建一个空的Android项目,作为SDK的宿主APP。在app的build.gradle文件中添加SDK的依赖,例如: ``` dependencies { implementation 'com.example:sdk:1.0.0' } ``` 3. 下载并解压SDK 在脚本中使用wget或curl等命令下载SDK,然后解压到本地目录。 4. 集成SDK 在脚本中使用以下命令,将SDK集成到宿主APP中: ``` ./gradlew clean assembleDebug -Pandroid.injected.build.dir=$SDK_PATH -Pandroid.injected.signing.store.file=$KEYSTORE_PATH -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD -Pandroid.injected.signing.key.alias=$KEY_ALIAS -Pandroid.injected.signing.key.password=$KEY_PASSWORD ``` 其中,$SDK_PATH是SDK的本地路径,$KEYSTORE_PATH是签名文件的路径,$KEYSTORE_PASSWORD是签名文件的密码,$KEY_ALIAS是签名文件的别名,$KEY_PASSWORD是签名文件的别名密码。 5. 打包 在脚本中使用以下命令,进行打包: ``` ./gradlew clean assembleRelease -Pandroid.injected.build.dir=$SDK_PATH -Pandroid.injected.signing.store.file=$KEYSTORE_PATH -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD -Pandroid.injected.signing.key.alias=$KEY_ALIAS -Pandroid.injected.signing.key.password=$KEY_PASSWORD ``` 这里使用assembleRelease进行打包,也可以根据需要使用assembleDebug进行调试。 至此,自动化脚本将SDK依赖到空壳宿主APP进行打包的示例完成。需要注意的是,实际情况中可能还需要进行其他步骤,例如签名、混淆等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值