前面項目打包一直沒問題,29號打包清笨,在沒改任何代碼的情況下月杉,build出現(xiàn)錯誤:
發(fā)現(xiàn)build的時候,下載了一些東西抠艾,當時沒注意看:
Download https://maven.google.com/com/android/support/support-v4/27.0.0/support-v4-27.0.0.pom
Download https://maven.google.com/com/android/support/customtabs/27.0.0/customtabs-27.0.0.pom
Download https://maven.google.com/com/android/support/support-compat/27.0.0/support-compat-27.0.0.pom
Download https://maven.google.com/com/android/support/support-media-compat/27.0.0/support-media-compat-27.0.0.pom
Download https://maven.google.com/com/android/support/support-core-utils/27.0.0/support-core-utils-27.0.0.pom
后來發(fā)現(xiàn)群里很多了出現(xiàn)了此問題苛萎,查資料,說是google升級了V4包检号,有些插件不兼容腌歉。
經(jīng)過2天的搜索和排查,試過了無數(shù)方法齐苛,有的開發(fā)者通過各式各樣的方法解決了翘盖,而我的,一直沒解決凹蜂,還是抱同樣的錯誤馍驯。后來發(fā)現(xiàn):
罪魁禍首是如下2個插件:
phonegap-plugin-barcodescanner
cordova-plugin-file-opener2
這2個插件用的是v4:+,而更新后需要用v4:23+以上版本才能編譯打包
直接上解決辦法:
1.如果你的項目沒有用這2個插件但是報了同樣的錯誤
解決方法:(以下方法來源于網(wǎng)絡)
(1) 把platforms/android/project.properties文件里的cordova.system.library.X的版本改為23.+以上玛痊,比如
cordova.system.library.2=com.android.support:support-v4:24.1.1+
重新build汰瘫。
(2)添加插件ionic cordova plugin add cordova-android-support-gradle-release --save后重新build。
(3)在flatforms/android/build.gradle的dependencies后加上
configurations.all {
resolutionStrategy {
force 'com.android.support:support-v4:27.1.0'
}
}
后重新build擂煞。
2.如果你的項目用到了這2個插件中的一個或者2個
首先刪除這2個插件混弥,然后:
(1)phonegap-plugin-barcodescanner
首先確認你的cordova和cordova-android版本,插件使用依賴版本如下:
"engines": {
"cordovaDependencies": {
"<7.0.0": {
"cordova-android": "<6.3.0",
},
"7.0.0": {
"cordova-android": ">=6.3.0"
},
"7.1.0": {
"cordova-android": ">=6.3.0",
"cordova": ">=7.1.0"
},
"8.0.0": {
"cordova-android": ">=6.3.0",
"cordova": ">=7.1.0"
}
}
},
舉個例子:比如我的項目cordova版本是6.5.0,cordova-android版本是6.1.2对省,
那我就去下載7.0.0版本以下的
ionic cordova plugin add phonegap-plugin-barcodescanner@6.0.8
tips:如果想下載高版本的蝗拿,但是通過ionic cordova plugin add phonegap-plugin-barcodescanner下載的明顯不是github上的最新版本,可以嘗試用ionic cordova plugin add https://github.com/phonegap/phonegap-plugin-barcodescanner.git命令來下載
好官辽,首先確認了自己需要下載的版本蛹磺,build試試粟瞬,如果還是報同樣的錯同仆,把你需要下載的版本整個下載到本地(github點releases,再點擊你所需要下載的版本號裙品,就可以進去所需版本的源碼了俗批,我下載的6.0.8版本)
下載下來后,找到phonegap-plugin-barcodescanner-6.0.8\src\android下的barcodescanner.gradle文件市怎,將 compile 'com.android.support:support-v4:+'
改成 compile 'com.android.support:support-v4:24.1.1+',改完保存后添加本地插件
比如:ionic cordova plugin add E:\ionic2\phonegap-plugin-barcodescanner-6.0.8
(2)cordova-plugin-file-opener2
這個插件依賴沒有那么多版本限制
直接去github把插件下載到本地岁忘,將插件的plugin.xml文件第
34行的 <framework src="com.android.support:support-v4:+" />改成 <framework src="com.android.support:support-v4:24.1.1+" />
改完保存后同樣添加本地插件
ionic cordova plugin add E:\ionic2\cordova-plugin-file-opener2-master