1、添加第三方依賴(lài)時(shí)候報(bào)錯(cuò)。
Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory)from[com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91isalso present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86value=(androidx.core.app.CoreComponentFactory).? ? Suggestion: add'tools:replace="android:appComponentFactory"'to element at AndroidManifest.xml:36:5-364:19to override.
經(jīng)過(guò)各種折騰,終于get到,Androidx和Android support庫(kù)不能共存
Androidx和Android support庫(kù)共存截圖
解決方案一 轉(zhuǎn)換成Androidx
將build tools更新到3.2.0,gradle更新到4.6,依賴(lài)庫(kù)統(tǒng)一更新到28.0.0,這一步非常重要,否則會(huì)導(dǎo)致第二步不能完全轉(zhuǎn)換成功。
image.png
修改完成后,可以看到依賴(lài)庫(kù)都是28.0.0的
image.png
選擇工程右鍵→Refactor→Migrate to Androidx...
image.png
選中所有需要重命名的目錄,執(zhí)行Do Refactor
image.png
發(fā)現(xiàn)已經(jīng)看不到support庫(kù)了,運(yùn)行成功安裝app。
解決方案二 轉(zhuǎn)換成Android Support
查看那些庫(kù)依賴(lài)了Androidx,
找到了問(wèn)題,果斷回退這個(gè)依賴(lài)庫(kù)的版本到2.1.4.
發(fā)現(xiàn)看不到androidx庫(kù)了,運(yùn)行成功安裝app。
依賴(lài)庫(kù)的時(shí)候,盡量不要使用latest.release,而使用具體的版本。
不會(huì)因?yàn)橐蕾?lài)庫(kù)更新,引起兼容問(wèn)題;
減少每次去查找最新版本,可以節(jié)省編譯時(shí)間。**