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
300
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
60
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エージェント開発における「攻めの品質改善」と「守りの品質保証」 / 2024.04.09 GPU UNITE 新年会 2025
smiyawaki0820
0
390
やさしいMCP入門
minorun365
PRO
146
92k
入社後SREチームのミッションや課題の整理をした話
morix1500
1
240
TopAppBar Composableをカスタムする
hunachi
0
170
Zabbixチョットデキルとは!?
kujiraitakahiro
0
160
OPENLOGI Company Profile
hr01
0
62k
LangfuseでAIエージェントの 可観測性を高めよう!/Enhancing AI Agent Observability with Langfuse!
jnymyk
0
150
さくらの夕べ Debianナイト - さくらのVPS編
dictoss
0
180
食べログが挑む!飲食店ネット予約システムで自動テスト無双して手動テストゼロを実現する戦略
hagevvashi
1
140
10分でわかるfreeeのQA
freee
1
12k
自分の軸足を見つけろ
tsuemura
2
540
はじめてのSDET / My first challenge as a SDET
bun913
1
180
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Producing Creativity
orderedlist
PRO
344
40k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Thoughts on Productivity
jonyablonski
69
4.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
Music & Morning Musume
bryan
47
6.5k
Gamification - CAS2011
davidbonilla
81
5.2k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Writing Fast Ruby
sferik
628
61k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
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