AndroidXへの移行

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/Utzw0p0985/article/details/98805770

640?wx_fmt = PNG

中国の公式文書アドレス

https://developer.android.google.cn/jetpack/androidx

 

我々はAndroidStudioが私達の前のcom.android.supperパッケージが前に見ていないいくつかのエラー表示されることにより、androidxのプレフィックスとなり、同行していることがわかっ更新すると、この時間が原因AndroidXのいくつかを探しに行きます、その後、この記事では、完全にAndroidXを導入するために、Googleの公式文書を組み合わせることです。

 

AndroidXはJetpackの、テスト、パッケージの開発のためのAndroidチームであり、そのバージョン管理ライブラリとオープンソース・プロジェクトを公開します。

 

Jetpackのはで見つけることができます:

https://developer.android.google.cn/jetpack

 

Jetpackのは、より簡単に高品質なアプリケーションを作成する開発者を支援するためのライブラリ、ツールとガイダンスのセットです。これらのコンポーネントは、あなたが希望のコードに集中できるよう、定型的なコードを書いて、複雑なタスクを簡素化するために作業を取り除くためにできるように、ベストプラクティスに従うことができます。

 

JetpackのプラットフォームAPIのアンバンドリングが含ま  androidxを。*  パッケージのライブラリ。これは、あなたが常にJetpackのコンポーネントの最新かつ最高のバージョンを得ることができることを確実にするためには、Androidプラットフォームよりも下位互換性と更新頻度が高いを提供できることを意味します。

 

ここでは、詳細に説明し、再で私の興味のJetpackを話すことが第一であること。

 

公式声明によると、AndroidXは、我々はすべて私たちがプロジェクトを作成するときに、デフォルトの統合は、私たちにいくつかの依存関係を与えることを知って、終了する前に統合されたプロジェクトのcom.android.supperです:

640?wx_fmt = PNG

しかし、Googleの引数に従って、フォローアップは徐々に放棄される混乱の夕食パッケージと均一なメンテナンスAndroidXが、これは非常に古いものですが、私たちは、彼をよく知って、彼を知っているし、彼を愛さなければなりません。

 

Googleはまた、あなたが新しいプロジェクトであれば、あなたはAndroidXを展開するには、次の方法に従うことができますことをお勧めします。

 

あなたが新しいプロジェクトでAndroidXを使用している場合、あなたは、Android 9.0(APIレベル28)以降にSDKをコンパイルする必要があります、と  gradle.propertiesはファイルtrueに設定されている次の二つのAndroidのGradleプラグインフラグに。

 

1. android.useAndroidX :trueに設定すると、Androidのプラグインは、むしろサポートライブラリよりも、対応するAndroidXライブラリを使用します。falseに指定されていない場合は、値をデフォルトとします。

 

2 .android.enableJetifier :trueに設定すると、AndroidのプラグインはAndroidXを使用するために、既存のサードパーティ製のライブラリを移行し、自動的に、そのバイナリファイルを書き換えます。falseに指定されていない場合は、値をデフォルトとします。

 

後で2つのプラグインを開くとき、あなたは実際には変更されませんbuild.gradleが、あなたは示すように、パッケージは、パッケージ名をandroidxされます引用しました:

       640?wx_fmt = PNG

AppCompatActivityは、パッケージ名の変更を見ることができます

アンドロイド.support.v7.app.AppCompatActivity

androidx.appcompat.app.AppCompatActivity

 

また、レイアウトで見ることができ、私たちのConstraintLayoutパッケージ名が発生した変更

android.support.constraint.ConstraintLayout

androidx.constraintlayout.widget.ConstraintLayout

 

これにパッケージがAndroidXをサポートすることであるとして、それだけでなく、ああ、あなたのプロジェクト全体のパッケージ名は、以下に私たちはAndroidXへの移行を説明し、ああ変更する必要があります。

 

〜これは新しいプロジェクトで、多くの苦痛を想像して、あなたが変更する必要がある2つのプラグイン、その後、古いプロジェクトを開いた後、Googleは私たちにAndroidXが移行するチュートリアルを与えたが、ピットは、よりであることだけを言うことができます

AndroidXへの移行

中国の公式文書:

https://developer.android.google.cn/jetpack/androidx/migrate

 

応急のAndroid Studioは3.2を使用する必要があり、後の仕事のために、あなたは、メニューバーから選択することができ、ここで注意することは、既存のプロジェクトを移行するための リファクタリング> AndroidXへの移行、迅速AndroidXを使用する既存のプロジェクトを移行します。

 

もちろん、古いプロジェクトでは、あなたはまだMavenの依存AndroidX名前空間に移行していないことを避けるために、useAndroidXとenableJetifier 2つのプラグインを開くことです

 

移行するが、依存関係が変換する必要があり、既存のプロジェクトで任意のサードパーティのライブラリを使用していない、あなたができる  android.useAndroidXの マークが設定され  trueに、そして  android.enableJetifierの フラグが設定されている 

 

我々はすべてを制御するために得るマッピングテーブルを変更するものに依存することの次に、私たちはここにV7と制約レイアウト変更する必要があります

 

ここで私は、マッピングテーブルの公式ウェブサイトによるといくつかの変更がありました:

       640?wx_fmt = PNG      

このように、我々は成功した移行を持っていますが、これが唯一の理論的な移行が成功している、我々は多くの仕事を持っている、これは古いプロジェクトであることからも、このようなパッケージ名を変更すると、行われなければ、対応するcom.android.supperを必要とします他の従属制御テーブルマッピングの変更の数を含む、対応するandroidxに変更されます。

 

いくつかの他のサードパーティに依存するエラーのように、それが解決するための状況下で必要です。

 

注意:あなたがAndroidのKTXモジュールを使用している場合は、移行の問題を回避するために、依存関係を更新してください。各モジュールの最新バージョンについては、AndroidKTXを参照してください。

https://developer.android.google.cn/kotlin/ktx

付録:地図

古いビルドアーティファクト

AndroidXアーティファクトを構築

android.arch.core:共通

androidx.arch.core:コア - 共通:2.0.0-RC01

android.arch.core:コア

androidx.arch.core:コア:2.0.0-RC01

android.arch.core:コアテスト

androidx.arch.core:コア・テスト:2.0.0-RC01

android.arch.core:ランタイム

androidx.arch.core:コアランタイム:2.0.0-RC01

android.arch.lifecycle:共通

androidx.lifecycle:ライフサイクル共通:2.0.0-RC01

android.arch.lifecycle:コモンjava8

androidx.lifecycle:ライフサイクル共通java8:2.0.0-RC01

android.arch.lifecycle:コンパイラ

androidx.lifecycle:ライフサイクル・コンパイラ:2.0.0-RC01

android.arch.lifecycle:extensions

androidx.lifecycle:lifecycle-extensions:2.0.0-rc01

android.arch.lifecycle:livedata

androidx.lifecycle:lifecycle-livedata:2.0.0-rc01

android.arch.lifecycle:livedata-core

androidx.lifecycle:lifecycle-livedata-core:2.0.0-rc01

android.arch.lifecycle:reactivestreams

androidx.lifecycle:lifecycle-reactivestreams:2.0.0-rc01

android.arch.lifecycle:runtime

androidx.lifecycle:lifecycle-runtime:2.0.0-rc01

android.arch.lifecycle:viewmodel

androidx.lifecycle:lifecycle-viewmodel:2.0.0-rc01

android.arch.paging:common

androidx.paging:paging-common:2.0.0-rc01

android.arch.paging:runtime

androidx.paging:paging-runtime:2.0.0-rc01

android.arch.paging:rxjava2

androidx.paging:paging-rxjava2:2.0.0-rc01

android.arch.persistence.room:common

androidx.room:room-common:2.0.0-rc01

android.arch.persistence.room:compiler

androidx.room:room-compiler:2.0.0-rc01

android.arch.persistence.room:guava

androidx.room:room-guava:2.0.0-rc01

android.arch.persistence.room:migration

androidx.room:room-migration:2.0.0-rc01

android.arch.persistence.room:runtime

androidx.room:room-runtime:2.0.0-rc01

android.arch.persistence.room:rxjava2

androidx.room:room-rxjava2:2.0.0-rc01

android.arch.persistence.room:testing

androidx.room:room-testing:2.0.0-rc01

android.arch.persistence:db

androidx.sqlite:sqlite:2.0.0-rc01

android.arch.persistence:db-framework

androidx.sqlite:sqlite-framework:2.0.0-rc01

com.android.support.constraint:constraint-layout

androidx.constraintlayout:constraintlayout:1.1.2

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

androidx.constraintlayout:constraintlayout-solver:1.1.2

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

androidx.test.espresso.idling:idling-concurrent:3.1.0

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

androidx.test.espresso.idling:idling-net:3.1.0

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

androidx.test.espresso:espresso-accessibility:3.1.0

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

androidx.test.espresso:espresso-contrib:3.1.0

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

androidx.test.espresso:espresso-core:3.1.0

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

androidx.test.espresso:espresso-idling-resource:3.1.0

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

androidx.test.espresso:espresso-intents:3.1.0

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

androidx.test.espresso:espresso-remote:3.1.0

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

androidx.test.espresso:espresso-web:3.1.0

com.android.support.test.janktesthelper:janktesthelper

androidx.test.jank:janktesthelper:1.0.1

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

androidx.test:test-services:1.1.0

com.android.support.test.uiautomator:uiautomator

androidx.test.uiautomator:uiautomator:2.2.0

com.android.support.test:monitor

androidx.test:monitor:1.1.0

com.android.support.test:orchestrator

androidx.test:orchestrator:1.1.0

com.android.support.test:rules

androidx.test:rules:1.1.0

com.android.support.test:runner

androidx.test:runner:1.1.0

com.android.support:animated-vector-drawable

androidx.vectordrawable:vectordrawable-animated:1.0.0

com.android.support:appcompat-v7

androidx.appcompat:appcompat:1.0.0

com.android.support:asynclayoutinflater

androidx.asynclayoutinflater:asynclayoutinflater:1.0.0

com.android.support:car

androidx.car:car:1.0.0-alpha5

com.android.support:cardview-v7

androidx.cardview:cardview:1.0.0

com.android.support:collections

androidx.collection:collection:1.0.0

com.android.support:coordinatorlayout

androidx.coordinatorlayout:coordinatorlayout:1.0.0

com.android.support:cursoradapter

androidx.cursoradapter:cursoradapter:1.0.0

com.android.support:customtabs

androidx.browser:browser:1.0.0

com.android.support:customview

androidx.customview:customview:1.0.0

com.android.support:design

com.google.android.material:material:1.0.0-rc01

com.android.support:documentfile

androidx.documentfile:documentfile:1.0.0

com.android.support:drawerlayout

androidx.drawerlayout:drawerlayout:1.0.0

com.android.support:exifinterface

androidx.exifinterface:exifinterface:1.0.0

com.android.support:gridlayout-v7

androidx.gridlayout:gridlayout:1.0.0

com.android.support:heifwriter

androidx.heifwriter:heifwriter:1.0.0

com.android.support:interpolator

androidx.interpolator:interpolator:1.0.0

com.android.support:leanback-v17

androidx.leanback:leanback:1.0.0

com.android.support:loader

androidx.loader:loader:1.0.0

com.android.support:localbroadcastmanager

androidx.localbroadcastmanager:localbroadcastmanager:1.0.0

com.android.support:media2

androidx.media2:media2:1.0.0-alpha03

com.android.support:media2-exoplayer

androidx.media2:media2-exoplayer:1.0.0-alpha01

com.android.support:mediarouter-v7

androidx.mediarouter:mediarouter:1.0.0

com.android.support:multidex

androidx.multidex:multidex:2.0.0

com.android.support:multidex-instrumentation

androidx.multidex:multidex-instrumentation:2.0.0

com.android.support:palette-v7

androidx.palette:palette:1.0.0

com.android.support:percent

androidx.percentlayout:percentlayout:1.0.0

com.android.support:preference-leanback-v17

androidx.leanback:leanback-preference:1.0.0

com.android.support:preference-v14

androidx.legacy:legacy-preference-v14:1.0.0

com.android.support:preference-v7

androidx.preference:preference:1.0.0

com.android.support:print

androidx.print:print:1.0.0

com.android.support:recommendation

androidx.recommendation:recommendation:1.0.0

com.android.support:recyclerview-selection

androidx.recyclerview:recyclerview-selection:1.0.0

com.android.support:recyclerview-v7

androidx.recyclerview:recyclerview:1.0.0

com.android.support:slices-builders

androidx.slice:slice-builders:1.0.0

com.android.support:slices-core

androidx.slice:slice-core:1.0.0

com.android.support:slices-view

androidx.slice:slice-view:1.0.0

com.android.support:slidingpanelayout

androidx.slidingpanelayout:slidingpanelayout:1.0.0

com.android.support:support-annotations

androidx.annotation:annotation:1.0.0

com.android.support:support-compat

androidx.core:core:1.0.0

com.android.support:support-content

androidx.contentpager:contentpager:1.0.0

com.android.support:support-core-ui

androidx.legacy:legacy-support-core-ui:1.0.0

com.android.support:support-core-utils

androidx.legacy:legacy-support-core-utils:1.0.0

com.android.support:support-dynamic-animation

androidx.dynamicanimation:dynamicanimation:1.0.0

com.android.support:support-emoji

androidx.emoji:emoji:1.0.0

com.android.support:support-emoji-appcompat

androidx.emoji:emoji-appcompat:1.0.0

com.android.support:support-emoji-bundled

androidx.emoji:emoji-bundled:1.0.0

com.android.support:support-fragment

androidx.fragment:fragment:1.0.0

com.android.support:support-media-compat

androidx.media:media:1.0.0

com.android.support:support-tv-provider

androidx.tvprovider:tvprovider:1.0.0

com.android.support:support-v13

androidx.legacy:legacy-support-v13:1.0.0

com.android.support:support-v4

androidx.legacy:legacy-support-v4:1.0.0

com.android.support:support-vector-drawable

androidx.vectordrawable:vectordrawable:1.0.0

com.android.support:swiperefreshlayout

androidx.swiperefreshlayout:swiperefreshlayout:1.0.0

com.android.support:textclassifier

androidx.textclassifier:textclassifier:1.0.0

com.android.support:transition

androidx.transition:トランジション:1.0.0

com.android.support:versionedparcelable

androidx.versionedparcelable:versionedparcelable:1.0.0

com.android.support:viewpager

androidx.viewpager:viewpager:1.0.0

com.android.support:wear

androidx.wear:着用:1.0.0

com.android.support:webkit

androidx.webkit:WebKitの:1.0.0

 

利害関係者は、ああ、私の知識の惑星に参加することができ、あなただけのオリジナルああ読み取るためにクリックすることができます〜

惑星の右下隅には約この知識は、クリックの公開数で、私も[学ぶ]または公衆番号[こんにちはアンドロイド] [惑星]の知識を送信することができます

おすすめ

転載: blog.csdn.net/Utzw0p0985/article/details/98805770