flutter/Android接入友盟、阿里百川SDK,打包APK后报无法加载arr库的坑

刚接触flutter,边学边做。其实遇到的是两个坑,但看起来像是同个问题引起的,多么痛的领悟,基础不牢、解决问题流程不对太耽误时间了。

 打包APK后报无法加载友盟arr库

有篇帖子说是启用压缩导致的,去掉压缩后就好了,混淆还是要的,阿里百川SDK必需要的。虽然问题通过了,后面抽空还是要仔细研究下。

阿里百川SDK无法初始化

刚开始一直认为是跟友盟是同一个原因引起的(流汗),查看Log发现是阿里百川安全图片的问题,然后去仔细查看官方文档,才猛然发现Release版本签名后没有重新上传APK(想狠狠抽自己),然后重新上传APK下载安全图片就好了。

这里贴一下阿里百川安全图片的说明:

什么是安全图片

  • 百川平台将从上传的包内提取签名,包名等信息,并加密存储到下载 SDK 中的安全图片。SDK 启动时会校验当前 apk 和图片中的签名信息,以避免发布的安装包被恶意篡改。另外,请注意如下事项:
  • 1)因为只提取安装包的签名以及包名信息,所以上传时对安装包的内容没有任何要求。
  • 2)请确保后续开发中用于 apk 签名的 keystore 和上传 apk 所使用的保持一致。
  • 3)如开发过程中或最终发布应用时需要切换其他 keystore,请上传使用新 keystore 签名的 apk 重新生成 SDK,并拷贝下载 SDK 中新的安全图片 ( res/drawable/yw_1222.jpg) 并替换掉当前开发工程中相同位置的同名文件。

使用须知

  • 安全图片是使用应用的appkey和其他相关信息(android还需要提供keystore签名的apk文件)一起加密生成的1像素点的加密图片。
  • 使用时请将图片改名为yw_1222.jpg,只需根据iOS和android放在对应的目录下,iOS:只要把安全图片放到工程目录底下即可; Android:需要把安全图片放到/res/drawable下。
  • 调用时,android客户端SDK会校验安全图片中加密的keystore和当前程序中的keystore是否一致,如果不一致初始化会失败。iOS客户端SDK会校验校验安全图片中加密的appkey信息和当前程序中的URL Types里面填写的appkey应用是否一致,若不一致也会报错。

参考文章:

阿里百川Android接入文档:https://baichuan.taobao.com/docs/doc.htm?spm=a3c0d.7629140.0.0.2c3dbe48u6LZaZ&treeId=129&articleId=118400&docType=1 

debug可用,release包初始化失败:https://ask.csdn.net/questions/5984543

记录介入阿里百川的坑:https://blog.csdn.net/qq_33216944/article/details/105653910

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值