接了华为Sdk后打包ERROR: Failed to verif
2023-10-08 本文已影响0人
逆水寒Stephen
我们app对接了华为登录及华为支付,大概如下:
implementation 'com.huawei.agconnect:agconnect-core:1.7.3.302' implementation 'com.huawei.hms:hwid:6.9.0.301' implementation 'com.huawei.hms:iap:6.10.0.300' implementation 'com.huawei.hms:hmscoreinstaller:6.6.0.300' implementation 'com.huawei.hms:appservice:6.10.0.300'
然后我们app的buildType有:debug、release、debugFast、releaseFast四种构建类型
- 其中debug、release的包名是'com.xxx.xxx.xxx'
- debugFast、releaseFast的包名是'com.xxx.xxx.xxx.fast'
去华为申请时用的包名是'com.xxx.xxx.xxx',生成的json文件为"agconnect-services.json",此文件里面的包名为'com.xxx.xxx.xxx',所以打包debugFast、releaseFast时就报了标题的包名错误,无法打包!
解决方案:
在src目录下面的新建跟不能正常打包的构建类型同名的目录debugFast和releaseFast,然后copy华为json文件"agconnect-services.json"到新建的目录里面,然后修改粘贴的json文件里面的包名'com.xxx.xxx.xxx'为'com.xxx.xxx.xxx.fast',这样再打包就没问题了,参考图如下:
我的项目图
核心原因是AS打包时会优先用buildType同名目录里面的配置文件,不局限于"agconnect-services.json",还可以对"AndroidManifest.xml"、"res"目录、"java"目录等等