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
AndroidO対応 / Souzoh Android Talk Kauru O
Search
mochico
February 28, 2018
Technology
2
690
AndroidO対応 / Souzoh Android Talk Kauru O
AndroidO対応の実践についての知見です
https://mercari.connpass.com/event/78966/
mochico
February 28, 2018
Tweet
Share
More Decks by mochico
See All by mochico
Jetpack Glanceではじめる Material 3のColor
mochico
1
2.2k
Invitation for modern Android UI development - Basic of Jetpack Compose
mochico
1
310
Title : Let's Preview! Jetpack Compose
mochico
2
1.6k
Build app fast on Android Studio 4.+
mochico
0
2.1k
How to Motion Editor - Report from Android Dev Summit 2019
mochico
3
1.5k
Google I/O 2019 WAIWAI Reporting Session Overview
mochico
0
61
Report of Firebase Summit 2018
mochico
1
2.5k
Kotlin Fest 2018 わいわい報告会 / mochicoroutines
mochico
0
270
start from Convert to Kotlin
mochico
2
9.5k
Other Decks in Technology
See All in Technology
より良い開発者体験を実現するために~開発初心者が感じた生成AIの可能性~
masakiokuda
0
230
企業が押さえるべきMCPの未来
takaakikakei
0
260
Running JavaScript within Ruby
hmsk
3
430
Oracle Cloud Infrastructure:2025年4月度サービス・アップデート
oracle4engineer
PRO
0
330
Winning at PHP in Production in 2025
beberlei
1
270
AIにおけるソフトウェアテスト_ver1.00
fumisuke
1
330
30代からでも遅くない! 内製開発の世界に飛び込み、最前線で戦うLLMアプリ開発エンジニアになろう
minorun365
PRO
16
5k
Perl歴約10年のエンジニアがフルスタックTypeScriptに出会ってみた
papix
1
260
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
150
Как мы автоматизировали интеграционное тестирование с Gonkey и не пожалели. Паша Егорычев, Кирилл Поляков
lamodatech
0
1.7k
PagerDuty×ポストモーテムで築く障害対応文化/Building a culture of incident response with PagerDuty and postmortems
aeonpeople
3
540
2025-04-14 Data & Analytics 井戸端会議 Multi tenant log platform with Iceberg
kamijin_fanta
0
180
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
42
7.5k
How to Ace a Technical Interview
jacobian
276
23k
Why Our Code Smells
bkeepers
PRO
336
57k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
23
2.7k
It's Worth the Effort
3n
184
28k
Fireside Chat
paigeccino
37
3.4k
Writing Fast Ruby
sferik
628
61k
We Have a Design System, Now What?
morganepeng
52
7.5k
Six Lessons from altMBA
skipperchong
28
3.7k
Optimizing for Happiness
mojombo
378
70k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Side Projects
sachag
453
42k
Transcript
ٕؕؐך"OESPJE0㼎䘔 !NPDIJDP 4PV[PI"OESPJE5BML
"CPVUNF NPDIJDP!@NPDIJDPO@ "OESPJE+BWB,PUMJOTXJGU 5FDICPPTUFS䪮遭剅Ⱙ ًٕٕؕٔؕؐ
None
"OESPJE0דך㢌刿挿
"OESPJE0דך㢌刿挿 ˖ غحؙؚٓؐٝس㹋遤ⵖꣲ ˖ "OESPJEךغحؙؚٓؐٝس⡘縧䞔㜠ךⵖꣲ ˖ ،فٔءّ٦زؕحز ˖ ٗ؛٦ٕה㕂ꥷ⻉ ˖
陨デؐ؍ٝسؐ ˖ Ⰵ⸂הشؽ٦ءّٝ ˖ ؐؑـؿؓ٦ي荈⹛Ⰵ⸂ ˖ ِ٦ؠ٦酡⸔堣腉 ˖ طحزٙ٦ؙה)551 4 䱸竲 ˖ #MVFUPPUI ˖ ء٦يٖأז䱸竲 ˖ إُؗٔذ؍ ˖ فٓ؎غء٦ ˖ 䯲䯝ׁגְזְ⢽㢩ךؚٗ鎸ꐮ ˖ 鸬窃⯓فٗغ؎تךⵃ欽窟鎘ך㢌刿 ˖ ؝ؙٖءّٝךⳢ椚 ˖ ؒٝة٦فٓ؎ؤぢֽ"OESPJE
"OESPJE0דך㢌刿挿 ˖ ِ٦ؠ٦ؙؒألٔؒٝأ ˖ 鸐濼 ˖ "VUPMMؿٖ٦يٙ٦ؙ ˖ ؾؙثٍ؎ٝؾؙثٌٍ٦س ˖
تؐٝٗ٦س〳腉זؿؓٝز ˖ 9.-ؿؓٝز ˖ 5FYU7JFXך荈⹛؟؎ؤ鏣㹀 ˖ ،تفذ؍ـ،؎؝ٝ ˖ 葿ך盖椚 ˖ 8FC7JFX"1* ˖ ؾٝ殅ׁءّ٦زؕحزהؐ؍آؑحز ˖ 剑㣐歗،ألؙز嫰 ˖ وٕثر؍أفٖ؎ך؟ه٦ز ˖ 窟♧ׁٖ؎،ؐزو٦آٝהػر؍ؚٝ ˖ ه؎ٝة䯲䯝 ˖ ،فٔؕذ؞ٔ ˖ "OESPJE57ٓٝثٍ٦ ˖ "OJNBUPS4FU ˖ Ⰵ⸂הشؽ٦ءّٝ ˖ ؗ٦ن٦سشؽ٦ءؙّٝٓأة ˖ رؿٕؓزךؿؓ٦ؕأ邌爙 ˖ءأذي ˖ 倜鋉4USJDU.PEF%FUFDUPS ˖ ٍؗحءُر٦ة ˖ ؝ٝذٝخفٗغ؎تךل٦آؚٝ ˖ ؝ٝذٝخ刿倜ؙٔؒأز ˖ +PC4DIFEVMFSך何㊣ ˖ ؕأةير٦ةأز، ˖ OE7JFX#Z*E 縭せך㢌刿 ˖ًر؍،ך䭁䓸 ˖ 7PMVNF4IBQFS ˖ ؔ٦ر؍ؔؿؓ٦ؕأך䭁䓸 ˖ ًر؍،ًزؙٔأ ˖ .FEJB1MBZFS ˖ .FEJB3FDPSEFS ˖ ؔ٦ر؍ؔⱄ欰؝ٝزٗ٦ٕ ˖ 何㊣ׁًر؍،ؿ؋؎ٕפך،ؙإأ ˖䱸竲 ˖ 8J'J"XBSF ˖ #MVFUPPUI ˖ ؝ٝػصؔٝ畭劣ךل،鏣㹀 ˖Ⱏ剣 ˖ أو٦زⰟ剣 ˖ أو٦زذؗأز鼅䫛 ˖ِ٦ؠ٦酡⸔堣腉 ˖ِ٦ؠ٦酡⸔堣腉نةٝ ˖杝甧׃갈ꆀ锃眍 ˖䭷秘钠鏾乼⡲ ְםְ
וַֿ㼎䘔ׅ ˖ 鸐濼/PUJDBUJPO$IBOOFMT ˖ غحؙؚٓؐٝس㹋遤ⵖꣲ#BDLHSPVOE &YFDVUJPO-JNJUT ˖ ،تفذ؍ـ،؎؝ٝ"EBQUJWF*DPOT
/PUJDBUJPO$IBOOFMT
None
/PUJDBUJPO$IBOOFM⡲䧭ׅ NotificationChannel channel = new NotificationChannel("notification_channel_id", "Notification Name", NotificationManager.IMPORTANCE_DEFAULT); channel.setDescription("Notification
Description"); notificationManager.createNotificationChannel(channel);
/PUJDBUJPOח$IBOOFM鏣㹀ׅ new NotificationCompat.Builder(context, "notification_channel_id");
ه؎ٝز ˖ /PUJDBUJPO$IBOOFM$IBOOFMؙٓأծ /PUJDBUJPO.BOBHFSDSFBUF/PUJDBUJPO$IBOOFMכ "1*-FWFMד鷄⸇ׁךד"1*-FWFM⟃♳ך㜥 さך$IBOOFM⡲䧭ׅ ˖ TFU4FUUJOHT5FYUזו"1*-FWFMחך㶷㖈ًׅ احسⵃ欽ׅ㜥さכ/PUJDBUJPO$PNQBUָⵃ 欽דֹזְךדⳢ椚ⴓֽ
'JSFCBTF$MPVE.FTTBHJOH ה /PUJDBUJPO$IBOOFM
'JSFCBTF/PUJDBUJPOTַفحءُ鸐濼鷏
'JSFCBTF/PUJDBUJPOTךفحءُ鸐濼鏣㹀ׅ <meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/ic_status" /> <meta-data android:name="com.google.firebase.messaging.default_notification_color" android:resource="@color/colorAccent" /> <meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id" android:value="@string/default_notification_channel_id" />
'JSFCBTF/PUJDBUJPOַך鸐濼ךⳢ椚כ✳珏겲֮ ˖ 'PSFHSPVOE'JSFCBTF)UUQ1SPUPDPM ˖ #BDLHSPVOE ˖ 4FSWJDFָㄎלזְ ˖ 稢װַח/PUJDBUJPOךⵖ䖴ָדֹזְ
5JQT ˖ '$.穗歋ךفحءُכ$IBOOFMָזְ㜥さծ荈⹛涸ח չ.JTDFMMBOFPVTպהְֲثٍٝطָٕ鏣㹀ׁ ˖ $IBOOFM⡲䧭כꅾ醱׃גㄎלג㉏겗זְָծ㶷㖈ثؑحؙ׃ גծזְ㜥さך⡲䧭חׅךָ״ֲׁ 刿倜欰䧭儗挿ך-PDBMF邌鎸ד㔿㹀ׁג׃תֲךדծ黝㹅 DSFBUF/PUJDBUJPO$IBOOFMTㄎד刿倜׃קֲָ״ְ ˖
$IBOOFMךせװ铡僇俑כDSFBUF$IBOOFMㄎהֹח鏣㹀ׁ ךדծ-0$"-㢌刿ך#SPBE$BTU㹋鄲ׅץֹ ˖ %SPJE,BJHJ،فٔדכ㹋鄲ׁגְ
剑鵚ֿזֿהָ֮ת׃
None
⡦ָ饯ֹגְךַ ˖ 'JSFCBTF/PUJDBUJPOTַ鷏فحءُד ˖ SFCBTFNFTTBHJOHMJCSBSZָד ˖ 「ֽ《畭劣ך04ָ0SFPד ˖ ،فָٔ#BDLHSPVOEח֮הֹ ˖
鸐濼،؎؝ָٝ姻䌢ח邌爙ׁזְ
None
㔐鼘倯岀 ˖ 䌢ח)UUQ1SPUPDPM穗歋דفحءُ鸐濼鷏 ˖ SFCBTFNFTTBHJOHتؚٖؐٝ٦سׅ ˖ 4VQQPSU-JCSBSZتؚٖؐٝ٦س׃זֽלז זֻז٥٥٥ ˖ ،حفر٦ز爵
/PUJDBUJPO㼎䘔תה ˖ /PUJDBJUPO$IBOOFM㼎䘔כ䖓ך罋䣁ָ䗳銲 ˖ SFCBTFOPUJDBUJPOٓ؎ـٓٔך،حفر٦ز זד爵ת׃׳ֲ
#BDLHSPVOE&YFDVUJPO-JNJUT
#BDLHSPVOE&YFDVUJPO-JNJUT ˖ ،فָٔ#BDLHSPVOEח֮הֹ4FSWJDFך㹋遤ָⵖ ꣲׁ
#BDLHSPVOE&YFDVUJPO-JNJUT ˖ ،فָٔ#BDLHSPVOEח֮הֹ4FSWJDFך㹋遤ָⵖ ꣲׁ ˖ 'PSFHSPVOE4FSWJDFה׃ג㹋遤ׅ ˖ +PC*OUFOU4FSWJDFⵃ欽ׅ ˖ 4FSWJDFד㹋遤ׅ䗳銲ַָ֮鋅湫ׅ
+PC*OUFOU4FSWJDF ˖ FORVFVFXPSLח״ג+PC4DIFEVMFSⵃ欽׃ג غحؙؚٓؐٝس㹋遤遤ֲ
#BDLHSPVOE&YFDVUJPO-JNJUTחאְג鑫׃ֻכ
"EBQUJWF*DPOT
"EBQUJWF*DPOT
"EBQUJWF*DPOT ˖ UBSHFUחׅה⟃꣬ך畭劣דכ،؎؝ٝח胜 兝ָאֻ ˖ ך㜥さך胜兝ך䕎כ畭劣如痥 ˖ 9דכӴծ1דכ㔊錬 ˖ *NBHF"TTFU5PPMד⡲䧭דֹ
NJQNBQJD@MBVODIFS <?xml version="1.0" encoding="utf-8"?> <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> <background android:drawable="@color/ic_launcher_background"/> <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
</adaptive-icon>
None
ָֿֿ䗍㦩״"EBQUJWF*DPOT ˖ UBSHFUחׅה⟃꣬ך畭劣דכ胜兝אֹ،؎ ؝ٝ⟃㢩ך鼅䫛肇ָזְ ˖ ⟃꣬ך畭劣דכ畭劣ח״ג胜兝ך䕎ָ㢌 ˖ *NBHF"TTFU5PPMד⡘縧ך锃侭ָדֹזְ
5IBOL:PV
罋 "OESPJE]"OESPJE%FWFMPQFSTIUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTPSFPJOEFYIUNM "OESPJE0SFP鸐濼㼎䘔ثؑحؙٔأز2JJUBIUUQTRJJUBDPNNTUTTLJUFNTFCCFDBGBB 'JSFCBTF$MPVE.FTTBHJOHך)551فٗز؝ٕ]'JSFCBTFIUUQTSFCBTFHPPHMFDPNEPDTDMPVE NFTTBHJOHIUUQTFSWFSSFG 8IFOBQQJOCBDLHSPVOEJDPOJONFUBEBEBXIJUFv*TTVFvSFCBTFRVJDLTUBSUBOESPJEIUUQT HJUIVCDPNSFCBTFRVJDLTUBSUBOESPJEJTTVFT 'JSFCBTF4%,ה،فָٔCBDLHSPVOEך儗ח'JSFCBTF/PUJDBUJPOד鷏1VTI「ֽ《ה鸐濼،؎ ؝ֶַָٝ׃ֻז*NLOPXMFEHFXPSLFSIUUQIBDLJUJSPOIBUFOBCMPHDPNFOUSZ $傈湡
匌ׇB]5FDI#PPTUFSIUUQTUFDICPPTUFSHJUIVCJPDFEHF %FTJHOJOH"EBQUJWF*DPOTˊ(PPHMF%FTJHOˊ.FEJVNIUUQTNFEJVNDPNHPPHMFEFTJHOEFTJHOJOH BEBQUJWFJDPOTBGD OJDLCVUDIFS"EBQUJWF*DPO1MBZHSPVOE"O"OESPJEBQQGPSFYQFSJNFOUJOHXJUI"EBQUJWF*DPOTIUUQT HJUIVCDPNOJDLCVUDIFS"EBQUJWF*DPO1MBZHSPVOE