Ionic build android时Google Services版本冲突问题求助
解决Ionic构建Android时Google Services版本自动被替换的问题
我之前也碰到过一模一样的情况——手动把Google Services版本改成9.0.0,结果一构建就被自动换成+,导致报错卡发布。给你几个亲测有效的解决思路:
通过插件变量锁定版本(最靠谱的持久化方法)
先卸载旧的谷歌服务插件,再安装指定版本的插件时直接绑定Google Services版本:cordova plugin remove cordova-plugin-google-services cordova plugin add cordova-plugin-google-services@1.3.0 --variable PLAY_SERVICES_VERSION=9.0.0接着在项目根目录的
config.xml里,找到<platform name="android">标签,添加偏好设置锁死版本:<platform name="android"> <!-- 其他配置 --> <preference name="PLAY_SERVICES_VERSION" value="9.0.0" /> </platform>这样插件构建时就不会随便替换版本了。
手动修改Android构建配置并禁止插件自动修改
找到platforms/android/build.gradle文件,定位到dependencies区块,把com.google.gms:google-services:+改成com.google.gms:google-services:9.0.0。
为了防止后续操作被插件覆盖,在config.xml里添加配置文件覆盖规则:<config-file parent="/dependencies" target="platforms/android/build.gradle"> <classpath group='com.google.gms' name='google-services' version='9.0.0' /> </config-file>排查其他插件的版本冲突
有些插件(比如cordova-plugin-firebase、位置服务类插件)可能会依赖更高版本的Google Services,偷偷把版本改成+。你可以运行cordova plugin list查看所有插件,找出这类插件后,要么更换兼容9.0.0版本的插件版本,要么协调所有插件使用统一的Google Services版本。清理缓存后重新构建
最后别忘了清理构建缓存,避免旧配置干扰:ionic cordova clean android ionic cordova build android --release
内容的提问来源于stack exchange,提问作者DEV
相关产品推荐
相关产品推荐

