Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
AndroidO対応 / Souzoh Android Talk Kauru O
mochico
February 28, 2018
Technology
2
510
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
Invitation for modern Android UI development - Basic of Jetpack Compose
mochico
0
72
Title : Let's Preview! Jetpack Compose
mochico
2
940
Build app fast on Android Studio 4.+
mochico
0
1.4k
How to Motion Editor - Report from Android Dev Summit 2019
mochico
3
1.1k
Google I/O 2019 WAIWAI Reporting Session Overview
mochico
0
25
Report of Firebase Summit 2018
mochico
1
2k
Kotlin Fest 2018 わいわい報告会 / mochicoroutines
mochico
0
160
start from Convert to Kotlin
mochico
2
8.2k
introduce Material Theming ~practice~
mochico
1
1.2k
Other Decks in Technology
See All in Technology
〇〇みたいな検索作ってと言われたときに考えること / thinking before developing search system like that one
ryook
5
2.7k
私のAWS愛を聞け!ここが好きだよAmazon FSx for NetApp ONTAP
non97
0
750
ログラスを支える技術的投資の仕組み / loglass-technical-investment
urmot
9
1.9k
AutoMLを利用した機械学習モデル構築時に意識すること
sbtechnight
0
160
EKS AnywhereとIAM Anywhereを組み合わせてみた
regmarmcem
0
270
インフラのテストに VPC Reachability Analyzer は外せないという話
nulabinc
PRO
2
700
質の良い”カイゼン”の為の質の良い「振り返り」
shirayanagiryuji
0
120
ここが好きだよAWS管理ポリシー_devio2022/i_am_iam_lover
yukihirochiba
0
3.1k
聊聊 Cgo 的二三事
david74chou
0
330
Power Automate for desktopで 配信環境を改善してみた話
akiika
0
240
ぼくらが選んだ次のMySQL 8.0 / MySQL80 Which We Choose
line_developers
PRO
7
2.9k
ECS on EC2 で Auto Scaling やってみる!
sayjoy
1
150
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
31
6.8k
Statistics for Hackers
jakevdp
782
210k
The Illustrated Children's Guide to Kubernetes
chrisshort
18
40k
How GitHub Uses GitHub to Build GitHub
holman
465
280k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
6
570
A better future with KSS
kneath
226
16k
Designing Experiences People Love
moore
130
22k
Typedesign – Prime Four
hannesfritz
34
1.4k
What the flash - Photography Introduction
edds
62
10k
Debugging Ruby Performance
tmm1
65
10k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
100
5.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
151
13k
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