Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AndroidXの意外な修正コスト PreferenceFragmentCompat編
Search
Koji Wakamiya
December 19, 2018
Programming
0
1.3k
AndroidXの意外な修正コスト PreferenceFragmentCompat編
AndroidX
Koji Wakamiya
December 19, 2018
Tweet
Share
More Decks by Koji Wakamiya
See All by Koji Wakamiya
Flutterコントリビューションのススメ
d_r_1009
1
230
人気サービスをFlutter Webでリプレースするとどうなるのか
d_r_1009
0
1.1k
モバイルアプリケーション 開発組織の“学び”
d_r_1009
0
360
Add-to-appの戦い方
d_r_1009
0
1.7k
開発チーム主導で iOSの新機能に対応する 3つのポイント
d_r_1009
0
630
FlutterKaigi2021
d_r_1009
0
1.7k
Flutter?
d_r_1009
0
410
Room2.1 DatabaseView あるある
d_r_1009
0
690
AAC Paging & Kotlin化の紹介
d_r_1009
0
1.3k
Other Decks in Programming
See All in Programming
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
140
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
130
Health Kit × Foundation Models でAIコーチを作ってみた
ryunakayama
0
100
Node-REDのノードの開発・活用事例とコミュニティとの関わり(Node-RED Con Nagoya 2025)
404background
0
130
Making Angular Apps Smarter with Generative AI: Local and Offline-capable
christianliebel
PRO
0
110
【SPIJapan2025 共同登壇】ソフトウェアの価値を高頻度に創造していくためのスクラムチームにおけるAI活用事例
agile_effect
0
110
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
890
CSC509 Lecture 10
javiergs
PRO
0
170
2026年向け会社紹介資料
misu
0
130
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
260
AI駆動開発カンファレンスAutumn2025 _AI駆動開発にはAI駆動品質保証
autifyhq
0
130
ビルドプロセスをデバッグしよう!
yt8492
0
270
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Building Adaptive Systems
keathley
44
2.8k
Making Projects Easy
brettharned
120
6.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Docker and Python
trallard
46
3.6k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Transcript
AndroidXの意外な対応コスト PrefernceFragmentCompat編 Koji Wakamiya / Studyplus Inc. 2018.12.19 @日本Androidの会12月定例会
自己紹介 若宮浩司 (@D_R_1009) スタディプラス 株式会社 ✎ Android一本勝負 ✎ AAC大好き ✎
Pixel3欲しい
MISSION 「学ぶ喜びをすべての人へ」 多くの人がStudyplusを通じて学習のきっかけを見つけ、 学習を楽しく継続できることを実現する。
AndroidX 使ってますか?
目次 ✎ AndroidXとは ✎ AndroidX対応が必要なこと ✎ PrefernceFragmentCompatのケース
AndroidXとは ✎ Android Jetpackパッケージ(名) ◦ Google I/O 2018で発表 ◦ ActivityやRecyclerViewといった
Androidライブラリを再編 ✎ ライブラリのリリースと Androidのリリースを切り離す ◦ GMSのように個別の機能ごとに バージョンが更新されていく https://developer.android.com/jetpack/androidx/
AndroidX対応 ✎ TargetSDK 28以上へ ✎ Migrate to AndroidX ◦ AndroidStudio3.2のmenuから実行可能
▪ gradle.propertiesを更新 ▪ build.gradleを更新 ▪ import文を更新 https://developer.android.com/jetpack/androidx/migrate/
TargetSDK 28対応 ✎ 非 SDK インターフェースの制限 ◦ BNVのshift mode対応など ✎
フォアグラウンド サービスの パーミッション追加 ✎ Apache HTTP クライアントの サポート終了 ◦ GMapなどの対応状況も確認必須 https://developer.android.com/about/versions/pie/android-9.0-migration
意外な対応ケース ✎ 個人でPreferenceFragmentCompatに 対応するライブラリを作成 ◦ Time/DateのPickerDialog対応 https://github.com/koji-1009/ChronoDialogPreference
DialogPreferenceの継承クラスが変化 android androidx
DialogPreferenceの継承クラスが変化 ✎ androidxへの更新時にリファクタリング ◦ PreferenceとDialogFragmentが分離 ◦ リストに表示とダイアログ表示の ロジックが分離されている ✎ 表示するダイアログをカスタマイズする
ライブラリのため、影響が大きい ◦ 書き換えに2〜3日
事例のまとめ ✎ androidxへの対応は2019年のトピックに ◦ TargetSDK 28への更新が必須 ◦ Support Libは28.0.0まで ✎
アプリ独自でカスタマイズしている箇所に思わ ぬ影響が出る恐れが ◦ 対応は早め早めが良さそう ◦ 対応必要なケースを教えてください!