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
compileSdkVersion33でgetSerializable/getParcelab...
Search
napplecomputer
December 22, 2022
Technology
5.9k
13
Share
compileSdkVersion33でgetSerializable/getParcelableがつらい話
napplecomputer
December 22, 2022
More Decks by napplecomputer
See All by napplecomputer
Kotlin2.0対応などでビルド時間を45%削減したぞ!
napplecomputer
0
1.1k
EmojiPicker触ってみた
napplecomputer
0
750
式年遷Target SDK Version
napplecomputer
0
450
Target SDK Versionを上げない Notification runtime permission対応
napplecomputer
0
510
通知がOFFだとToastは表示されな… されてる!?
napplecomputer
0
1.1k
Photo Pickerを触って比較してみた
napplecomputer
0
2.2k
Android Qのストレージの話
napplecomputer
3
1.2k
Wi-Fi RTTによる屋内測位アプリを作ろう
napplecomputer
5
18k
Other Decks in Technology
See All in Technology
Azure Lifecycle with Copilot CLI
torumakabe
3
1k
QGISプラグイン CMChangeDetector
naokimuroki
1
350
Digitization部 紹介資料
sansan33
PRO
1
7.3k
Choose your own adventure in agentic design patterns
glaforge
0
120
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.3k
KGDC_13_Amazon Q Developerで挑む! 13事例から見えたAX組織変革の最前線_公開情報
kikugawa
0
110
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
370
20260423_執筆の工夫と裏側 技術書の企画から刊行まで / From the planning to the publication of technical book
nash_efp
1
360
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
120
明日からドヤれる!超マニアックなAWSセキュリティTips10連発 / 10 Ultra-Niche AWS Security Tips
yuj1osm
0
550
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
4.3k
AI時代における技術的負債への取り組み
codenote
0
1.3k
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
260
Believing is Seeing
oripsolob
1
110
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
First, design no harm
axbom
PRO
2
1.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
270
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
How to Talk to Developers About Accessibility
jct
2
180
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
How STYLIGHT went responsive
nonsquared
100
6.1k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
420
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
180
Transcript
Mobility Technologies Co., Ltd. compileSdkVersion33ͰgetSerializable/ getParcelable͕ͭΒ͍ @napplecomputer
Mobility Technologies Co., Ltd. 2 ▪ @napplecomputer ▪ ͳͬͽʔ ▪
גࣜձࣾMobility Technologies(MoT)ॴଐ ▪ λΫγʔΞϓϦʮGOʯͷϢʔβʔΞϓϦ ▪ ࡢΧϝϥҿΈ·ͨ͠ ࣗݾհ
Mobility Technologies Co., Ltd. Android 13 ରԠ 3
Mobility Technologies Co., Ltd. 4 Android 13 ରԠ͠·͔ͨ͠ʁ
Mobility Technologies Co., Ltd. 5 https://support.google.com/googleplay/android-developer/answer/11926878
Mobility Technologies Co., Ltd. 6 Target SDK VersionΛ্͛ΔͨΊʹ ͳʹΛ͢Ε͍͍ʁ
Mobility Technologies Co., Ltd. 7 ▪ Target SDK VersionΛ্͛Δ͜ͱͰڍಈͷมΘΔ෦ͷରԠͱಈ࡞֬ೝ ▪
ྫ͑Notification Runtime Permission ▪ Compile SDK VersionΛ্͛Δ ▪ Target SDK VersionΛCompile SDK VersionΑΓߴ͘͢Δ͜ͱͰ͖ͳ ͍ Target SDK Version 33 ରԠ
Mobility Technologies Co., Ltd. Compile SDK Version 33 ରԠ 8
Mobility Technologies Co., Ltd. 9 ▪ Compile SDK Version 33
ରԠͱͭ·ΓAPI level 33Ͱdeprecatedʹͳͬ ͨAPIΛ༻͍ͯ͠Δ෦Λมߋ͢Δ͜ͱ ▪ onBackPressedͷมߋͳͲ৭ʑ͋Δ ▪ ಛʹBundleͱIntentͷมߋ͕ͭΒ͍ Compile SDK Version 33 ରԠ
Mobility Technologies Co., Ltd. 10 ▪ T getParcelable(String) ▪ Parcelable[]
getParcelableArray(String) ▪ ArrayList<T> getParcelableArrayList(String) ▪ Serializable getSerializable(String) ▪ SparseArray<T> getSparseParcelableArray(String) BundleͷDeprecated in API level 33
Mobility Technologies Co., Ltd. 11 ▪ T getParcelable(String) ▪ Parcelable[]
getParcelableArray(String) ▪ ArrayList<T> getParcelableArrayList(String) ▪ Serializable getSerializable(String) ▪ SparseArray<T> getSparseParcelableArray(String) BundleͷDeprecated in API level 33
Mobility Technologies Co., Ltd. 12 ▪ T getParcelable(String, Class<T>) ▪
T[] getParcelableArray(String, Class<T>) ▪ ArrayList<T> getParcelableArrayList(String, Class<?, extends, T>) ▪ T getSerializable(String, Class<T>) ▪ SparseArray<T> getSparseParcelableArray(String, Class<?, extends, T>) BundleͷAdded in API level 33
Mobility Technologies Co., Ltd. 13 ▪ Parcelable[] getParcelableArrayExtra(String) ▪ ArrayList<T>
getParcelableArrayListExtra(String) ▪ T getParcelableExtra(String) ▪ Serializable getSerializableExtra(String) IntentͷDeprecated in API level 33
Mobility Technologies Co., Ltd. 14 ▪ T[] getParcelableArrayExtra(String, Class<T>) ▪
ArrayList<T> getParcelableArrayListExtra(String, Class<?, extends, T>) ▪ T getParcelableExtra(String, Class<T>) ▪ T getSerializableExtra(String, Class<T>) IntentͷAdded in API level 33
Mobility Technologies Co., Ltd. 15 ೖΕସ͑Ε͍͍͚ͩʁ
Mobility Technologies Co., Ltd. 16 ͩΊ
Mobility Technologies Co., Ltd. 17 bundle.getSerializable(KEY_HOGE, HOGE::class.java)
Mobility Technologies Co., Ltd. 18 bundle.getSerializable(KEY_HOGE, HOGE::class.java) if (Build.VERSION.SDK_INT >=
Build.VERSION_CODES.TIRAMISU) { bundle.getSerializable(KEY_HOGE, HOGE::class.java) } else { @Suppress("DEPRECATION") bundle.getSerializable(KEY_HOGE) as HOGE }
Mobility Technologies Co., Ltd. 19 AppCompat͋ΔͰ͠ΐ
Mobility Technologies Co., Ltd. 20 ͳ͍
Mobility Technologies Co., Ltd. 21 ͰIssueTruckerʹ Feature Request͕͋Δ
Mobility Technologies Co., Ltd. 22 https://issuetracker.google.com/issues/243986223
Mobility Technologies Co., Ltd. ·ͱΊ 23
Mobility Technologies Co., Ltd. 24 ▪ Compile SDK VersionͰ৽͘͠DeprecatedʹͳͬͨBundleͱIntentͷରԠ͕ͭ Β͍
▪ AppCompat͕·ͩରԠ͍ͯ͠ͳ͍ ▪ ରԠํ๏࣍ͷ2ͭ ▪ ࣗ࡞ͰόʔδϣϯΛྀ࣮ͯ͠ ▪ AppCompatʹ࣮͞ΕΔͷΛͭ ▪ ࣮͞ΕΔ·ͰSupress warning͢Δ ·ͱΊ
Mobility Technologies Co., Ltd. 25 ͱ͍͏ରԠͰμϝͰ͢ ӕ·ͱΊͰͨ͠
Mobility Technologies Co., Ltd. One more thing... 26
Mobility Technologies Co., Ltd. 27 https://issuetracker.google.com/issues/240585930
Mobility Technologies Co., Ltd. 28 https://issuetracker.google.com/issues/240585930
Mobility Technologies Co., Ltd. 29 ▪ ͳΜͱ৽͍͠getParcelableʹόά͕༗Δ ▪ ݅Λຬͨͨ͠ParcelableΛѻ͏ͱNullPointerException ▪
API level 33ͷAPIͷόάͳͷͰमਖ਼͞ΕΔͱͯ͠API level 34 ▪ ݹ͍getParcelableΛsuppress warning͠ͳ͕Β͏ͷ͕ແ ▪ ѻ͏Parcelable͕ෆ۩߹Λ౿Ή݅Λຬ͍ͨͯ͠Δͷ͔ఆ͢Δͷ໘ ▪ ͋ͱͰParcelableͷΫϥεΛมߋͯ͠ཕΛ౿ΜͰ͠·͏͔
Mobility Technologies Co., Ltd. ຊͷ·ͱΊ 30
Mobility Technologies Co., Ltd. 31 ▪ Compile SDK VersionͰ৽͘͠DeprecatedʹͳͬͨBundleͱIntentͷରԠ͕ ͭΒ͍
▪ AppCompat·ͩରԠ͍ͯ͠ͳ͍ ▪ ৽͍͠getParcelableʹόά͕༗ΔͷͰɺsuppress warningͰݹ͍ getParcelableΛ͏ͷ͕ແ ▪ কདྷAppCompat͕ରԠͨ͠߹ɺذͷڥք͕Ͳͷόʔδϣϯʹͳ͍ͬͯΔ ͷ͔֬ೝ͔ͯ͠Β͍·͠ΐ͏ ·ͱΊ
จষ·ը૾ͷ༰ͷແஅసࡌٴͼෳͷߦҝ͝ԕྀ͍ͩ͘͞ɻ Mobility Technologies Co., Ltd.