AndroidX遷移不用android.support v4

一、前言

在Google I/O 2018上,Android團隊宣佈了AndroidX。它是Android團隊用於在Jetpack中開發,測試,打包,版本和發佈庫的開源項目。與support庫一樣,每個AndroidX庫都與Android操作系統分開提供,並提供跨Android版本的向後兼容性。

androidx 是對 android.support.xxx 包和其他google android支持庫整理後的產物。由於之前的support包過於混亂,所以,google推出了 AndroidX。自support v7:28開始,大部分support包都會遷移到androidx下,所以建議開發者們儘早將項目轉移到androidx下。

二、遷移步驟

1.先備份項目!

2.使用Android Studio自動遷移

在菜單欄中依次進入Refactor > Migrate to AndroidX,之後as會提示備份項目,如果已備份就不用勾選備份選項。

3. 舊依賴包名與新包名對照表(建議使用Ctrl + F搜索)

執行Migrate to AndroidX完成之後,雖然常用的support包都會被轉成對應的androidx裡的包名,gradle或者maven裡的部分依賴但還是有可能會未能轉換成功,這時候需要我們手動修改。

原包名新包名

android.arch.core:commonandroidx.arch.core:core-common

android.arch.core:coreandroidx.arch.core:core

android.arch.core:core-testingandroidx.arch.core:core-testing

android.arch.core:runtimeandroidx.arch.core:core-runtime

android.arch.lifecycle:commonandroidx.lifecycle:lifecycle-common

android.arch.lifecycle:common-java8androidx.lifecycle:lifecycle-common-java8

android.arch.lifecycle:compilerandroidx.lifecycle:lifecycle-compiler

android.arch.lifecycle:extensionsandroidx.lifecycle:lifecycle-extensions

android.arch.lifecycle:livedataandroidx.lifecycle:lifecycle-livedata

android.arch.lifecycle:livedata-coreandroidx.lifecycle:lifecycle-livedata-core

android.arch.lifecycle:reactivestreamsandroidx.lifecycle:lifecycle-reactivestreams

android.arch.lifecycle:runtimeandroidx.lifecycle:lifecycle-runtime

android.arch.lifecycle:viewmodelandroidx.lifecycle:lifecycle-viewmodel

android.arch.paging:commonandroidx.paging:paging-common

android.arch.paging:runtimeandroidx.paging:paging-runtime

android.arch.paging:rxjava2androidx.paging:paging-rxjava2

android.arch.persistence.room:commonandroidx.room:room-common

android.arch.persistence.room:compilerandroidx.room:room-compiler

android.arch.persistence.room:guavaandroidx.room:room-guava

android.arch.persistence.room:migrationandroidx.room:room-migration

android.arch.persistence.room:runtimeandroidx.room:room-runtime

android.arch.persistence.room:rxjava2androidx.room:room-rxjava2

android.arch.persistence.room:testingandroidx.room:room-testing

android.arch.persistence:dbandroidx.sqlite:sqlite

android.arch.persistence:db-frameworkandroidx.sqlite:sqlite-framework

com.android.support.constraint:constraint-layoutandroidx.constraintlayout:constraintlayout

com.android.support.constraint:constraint-layout-solverandroidx.constraintlayout:constraintlayout-solver

com.android.support.test.espresso.idling:idling-concurrentandroidx.test.espresso.idling:idling-concurrent

com.android.support.test.espresso.idling:idling-netandroidx.test.espresso.idling:idling-net

com.android.support.test.espresso:espresso-accessibilityandroidx.test.espresso:espresso-accessibility

com.android.support.test.espresso:espresso-contribandroidx.test.espresso:espresso-contrib

com.android.support.test.espresso:espresso-coreandroidx.test.espresso:espresso-core

com.android.support.test.espresso:espresso-idling-resourceandroidx.test.espresso:espresso-idling-resource

com.android.support.test.espresso:espresso-intentsandroidx.test.espresso:espresso-intents

com.android.support.test.espresso:espresso-remoteandroidx.test.espresso:espresso-remote

com.android.support.test.espresso:espresso-webandroidx.test.espresso:espresso-web

com.android.support.test.janktesthelper:janktesthelperandroidx.test.jank:janktesthelper

com.android.support.test.services:test-servicesandroidx.test:test-services

com.android.support.test.uiautomator:uiautomatorandroidx.test.uiautomator:uiautomator

com.android.support.test:monitorandroidx.test:monitor

com.android.support.test:orchestratorandroidx.test:orchestrator

com.android.support.test:rulesandroidx.test:rules

com.android.support.test:runnerandroidx.test:runner

com.android.support:animated-vector-drawableandroidx.vectordrawable:vectordrawable-animated

com.android.support:appcompat-v7androidx.appcompat:appcompat

com.android.support:asynclayoutinflaterandroidx.asynclayoutinflater:asynclayoutinflater

com.android.support:carandroidx.car:car

com.android.support:cardview-v7androidx.cardview:cardview

com.android.support:collectionsandroidx.collection:collection

com.android.support:coordinatorlayoutandroidx.coordinatorlayout:coordinatorlayout

com.android.support:cursoradapterandroidx.cursoradapter:cursoradapter

com.android.support:customtabsandroidx.browser:browser

com.android.support:customviewandroidx.customview:customview

com.android.support:designcom.google.android.material:material

com.android.support:documentfileandroidx.documentfile:documentfile

com.android.support:drawerlayoutandroidx.drawerlayout:drawerlayout

com.android.support:exifinterfaceandroidx.exifinterface:exifinterface

com.android.support:gridlayout-v7androidx.gridlayout:gridlayout

com.android.support:heifwriterandroidx.heifwriter:heifwriter

com.android.support:interpolatorandroidx.interpolator:interpolator

com.android.support:leanback-v17androidx.leanback:leanback

com.android.support:loaderandroidx.loader:loader

com.android.support:localbroadcastmanagerandroidx.localbroadcastmanager:localbroadcastmanager

com.android.support:media2androidx.media2:media2:1.0.0-alpha03

com.android.support:media2-exoplayerandroidx.media2:media2-exoplayer

com.android.support:mediarouter-v7androidx.mediarouter:mediarouter

com.android.support:multidexandroidx.multidex:multidex

com.android.support:multidex-instrumentationandroidx.multidex:multidex-instrumentation

com.android.support:palette-v7androidx.palette:palette

com.android.support:percentandroidx.percentlayout:percentlayout

com.android.support:preference-leanback-v17androidx.leanback:leanback-preference

com.android.support:preference-v14androidx.legacy:legacy-preference-v14

com.android.support:preference-v7androidx.preference:preference

com.android.support:printandroidx.print:print

com.android.support:recommendationandroidx.recommendation:recommendation

com.android.support:recyclerview-selectionandroidx.recyclerview:recyclerview-selection

com.android.support:recyclerview-v7androidx.recyclerview:recyclerview

com.android.support:slices-buildersandroidx.slice:slice-builders

com.android.support:slices-coreandroidx.slice:slice-core

com.android.support:slices-viewandroidx.slice:slice-view

com.android.support:slidingpanelayoutandroidx.slidingpanelayout:slidingpanelayout

com.android.support:support-annotationsandroidx.annotation:annotation

com.android.support:support-compatandroidx.core:core

com.android.support:support-contentandroidx.contentpager:contentpager

com.android.support:support-core-uiandroidx.legacy:legacy-support-core-ui

com.android.support:support-core-utilsandroidx.legacy:legacy-support-core-utils

com.android.support:support-dynamic-animationandroidx.dynamicanimation:dynamicanimation

com.android.support:support-emojiandroidx.emoji:emoji

com.android.support:support-emoji-appcompatandroidx.emoji:emoji-appcompat

com.android.support:support-emoji-bundledandroidx.emoji:emoji-bundled

com.android.support:support-fragmentandroidx.fragment:fragment

com.android.support:support-media-compatandroidx.media:media

com.android.support:support-tv-providerandroidx.tvprovider:tvprovider

com.android.support:support-v13androidx.legacy:legacy-support-v13

com.android.support:support-v4androidx.legacy:legacy-support-v4

com.android.support:support-vector-drawableandroidx.vectordrawable:vectordrawable

com.android.support:swiperefreshlayoutandroidx.swiperefreshlayout:swiperefreshlayout

com.android.support:textclassifierandroidx.textclassifier:textclassifier

com.android.support:transitionandroidx.transition:transition

com.android.support:versionedparcelableandroidx.versionedparcelable:versionedparcelable

com.android.support:viewpagerandroidx.viewpager:viewpager

com.android.support:wearandroidx.wear:wear

com.android.support:webkitandroidx.webkit:webkit

如有其他未列出的依賴,請參考 https://developer.android.google.cn/topic/libraries/support-library/refactor

原文鏈接:https://blog.csdn.net/yin_ol/article/details/89421390


AndroidX遷移不用android.support v4/v7庫


分享到:


相關文章: