Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AndroidO対応 / Souzoh Android Talk Kauru O
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
mochico
February 28, 2018
Technology
770
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AndroidO対応 / Souzoh Android Talk Kauru O
AndroidO対応の実践についての知見です
https://mercari.connpass.com/event/78966/
mochico
February 28, 2018
More Decks by mochico
See All by mochico
Jetpack Glanceではじめる Material 3のColor
mochico
1
2.8k
Invitation for modern Android UI development - Basic of Jetpack Compose
mochico
1
430
Title : Let's Preview! Jetpack Compose
mochico
2
1.7k
Build app fast on Android Studio 4.+
mochico
0
2.2k
How to Motion Editor - Report from Android Dev Summit 2019
mochico
3
1.7k
Google I/O 2019 WAIWAI Reporting Session Overview
mochico
0
86
Report of Firebase Summit 2018
mochico
1
2.6k
Kotlin Fest 2018 わいわい報告会 / mochicoroutines
mochico
0
320
start from Convert to Kotlin
mochico
2
9.8k
Other Decks in Technology
See All in Technology
Mastering Agentic Development: Harness Engineering for Effective Coding Agents
konippi
3
490
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
おい、エージェントを使って終わらせろ
nwiizo
3
910
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
140
CLIライブラリ開発を支える技術
htnabe
0
150
Harness Engineering on Rails
joelq
0
440
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
5
730
AI Agent入門〜今更聞けないAgentの話〜
hiromimaganuma
0
110
時うどん〜Socket.getifaddrsで学ぶネットワーク編 / Tokiudon: The Socket.getifaddrs Edition
coe401_
4
260
2026-09-18 gotanda.sre Terraformで複数環境作ったり、複数Stateに分割したりそれとTerragrunt / Terraform multi envs and multi states
masasuzu
4
720
[Kiro Meetup #7] Kiro Crew Dive Deep
konippi
0
300
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
1.4k
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
5M
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
260
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
310
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
How to Ace a Technical Interview
jacobian
281
24k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Building AI with AI
inesmontani
PRO
1
1.2k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
The Curse of the Amulet
leimatthew05
3
15k
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