Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AndroidXの意外な修正コスト PreferenceFragmentCompat編

AndroidXの意外な修正コスト PreferenceFragmentCompat編

AndroidX

494a2760dceccc31c4bcdb689041c614?s=128

Koji Wakamiya

December 19, 2018
Tweet

Transcript

  1. AndroidXの意外な対応コスト PrefernceFragmentCompat編 Koji Wakamiya / Studyplus Inc. 2018.12.19 @日本Androidの会12月定例会

  2. 自己紹介 若宮浩司 (@D_R_1009) スタディプラス 株式会社 ✎ Android一本勝負 ✎ AAC大好き ✎

    Pixel3欲しい
  3. MISSION 「学ぶ喜びをすべての人へ」 多くの人がStudyplusを通じて学習のきっかけを見つけ、 学習を楽しく継続できることを実現する。

  4. AndroidX 使ってますか?

  5. 目次 ✎ AndroidXとは ✎ AndroidX対応が必要なこと ✎ PrefernceFragmentCompatのケース

  6. AndroidXとは ✎ Android Jetpackパッケージ(名) ◦ Google I/O 2018で発表 ◦ ActivityやRecyclerViewといった

    Androidライブラリを再編 ✎ ライブラリのリリースと Androidのリリースを切り離す ◦ GMSのように個別の機能ごとに バージョンが更新されていく https://developer.android.com/jetpack/androidx/
  7. AndroidX対応 ✎ TargetSDK 28以上へ ✎ Migrate to AndroidX ◦ AndroidStudio3.2のmenuから実行可能

    ▪ gradle.propertiesを更新 ▪ build.gradleを更新 ▪ import文を更新 https://developer.android.com/jetpack/androidx/migrate/
  8. TargetSDK 28対応 ✎ 非 SDK インターフェースの制限 ◦ BNVのshift mode対応など ✎

    フォアグラウンド サービスの パーミッション追加 ✎ Apache HTTP クライアントの サポート終了 ◦ GMapなどの対応状況も確認必須 https://developer.android.com/about/versions/pie/android-9.0-migration
  9. 意外な対応ケース ✎ 個人でPreferenceFragmentCompatに 対応するライブラリを作成 ◦ Time/DateのPickerDialog対応 https://github.com/koji-1009/ChronoDialogPreference

  10. DialogPreferenceの継承クラスが変化 android androidx

  11. DialogPreferenceの継承クラスが変化 ✎ androidxへの更新時にリファクタリング ◦ PreferenceとDialogFragmentが分離 ◦ リストに表示とダイアログ表示の ロジックが分離されている ✎ 表示するダイアログをカスタマイズする

    ライブラリのため、影響が大きい ◦ 書き換えに2〜3日
  12. 事例のまとめ ✎ androidxへの対応は2019年のトピックに ◦ TargetSDK 28への更新が必須 ◦ Support Libは28.0.0まで ✎

    アプリ独自でカスタマイズしている箇所に思わ ぬ影響が出る恐れが ◦ 対応は早め早めが良さそう ◦ 対応必要なケースを教えてください!