Skip to main content

AndroidXへ移行方法のまとめ

Kotlinプログラミング

新品価格
¥3,672から
(2019/1/19 09:31時点)


Support libraryのアップデートが終わり
これからはAndroidXがアップデートされていくことになった

そんなわけでマスタカも大分遅れましたが
AndroidX対応してみました


・AndroidXへの移行
Refactor→Migrate to AndroidX
で実行する.

システム的に一括で変換していくので、変換後に細かいところを修正していく
AndroidStudioを最新のバージョンに上げてから実行しないとエラー吐くので注意

・AndroidXのバージョン
androidx.appcompat:appcompatはなぜかbetaで補完される
1.0.0-beta01
だから以下に直す
1.0.2

ただし、パッケージは細分化されたので以下のパッケージは
com.google.android.material:material
androidx.browser:browser
1.0.0
に設定する必要がある

また、androidx.lifecycle:lifecycle-extensionsは
2.0.0-beta01
が設定されたので
2.0.0
に直す

古いサポートライブラリは以下になる
不要なので消し去りましょう
androidx.legacy:legacy-support-v4:

・SearchViewのidがエラー吐く
SearchViewのidがなぜか補完される
リフレクション使ってるところ全部ダメかも
androidx.appcompat.appcompat.R.id.search_src_text
これを以下に直す
R.id.search_src_text

・PreferenceFragment
PreferenceFragmentがdeprecatedなので
PreferenceFragmentCompatに直す
importは、androidx.preference:preference
コードは以下を参考にして直す。
これAndroidX関係なかったかも
https://qiita.com/wasnot/items/dfc33bb91f64abfec04c

・クラス名からimport文の削除
importしてるくせに
androidx.recyclerview.widget.RecyclerView.ViewHolder
って出てきてうざい
importはしてるので以下に修正する
RecyclerView.ViewHolder
これは色々な場所で起きてるので全部修正する必要がある

 

こうしてAndroidX対応しましたとさ
思った以上に簡単に対応できるのでそろそろ対応しても良いんじゃないかな

関連記事:

Pocket