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
AndroidアプリとWebコンテンツの連携 / Sansan Tech Meetup And...
Search
Hideki Hamada
December 18, 2020
Technology
1
1.2k
AndroidアプリとWebコンテンツの連携 / Sansan Tech Meetup Android
【Sansan Tech Meetup】Android開発Tipsを3社のエンジニアが語る
Hideki Hamada
December 18, 2020
Tweet
Share
More Decks by Hideki Hamada
See All by Hideki Hamada
devio2019osaka_hamada_hideki.pdf
jakalada
0
1.7k
2019-05-18-gdg-kyoto-jakalada.pdf
jakalada
0
820
mobilemethod-osaka-2018-11-09-jakalada-android
jakalada
0
1.2k
Other Decks in Technology
See All in Technology
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
600
Operating Operator
shhnjk
1
640
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
270
伴走から自律へ: 形式知へと導くSREイネーブリングによる プロダクトチームの信頼性オーナーシップ向上 / SRE NEXT 2025
visional_engineering_and_design
2
180
Reach American Airlines®️ Instantly: 19 Calling Methods for Fast Support in the USA
flyamerican
1
180
Delegating the chores of authenticating users to Keycloak
ahus1
0
170
CDK Toolkit Libraryにおけるテストの考え方
smt7174
1
370
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
250
AWS CDK 入門ガイド これだけは知っておきたいヒント集
anank
4
490
第64回コンピュータビジョン勉強会「The PanAf-FGBG Dataset: Understanding the Impact of Backgrounds in Wildlife Behaviour Recognition」
x_ttyszk
0
140
United Airlines Customer Service– Call 1-833-341-3142 Now!
airhelp
0
170
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
470
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Statistics for Hackers
jakevdp
799
220k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
How GitHub (no longer) Works
holman
314
140k
Docker and Python
trallard
44
3.5k
Six Lessons from altMBA
skipperchong
28
3.9k
Music & Morning Musume
bryan
46
6.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Building Adaptive Systems
keathley
43
2.7k
Transcript
AndroidΞϓϦͱ Webίϯςϯπͷ࿈ܞ Ϋϥεϝιουגࣜձࣾɹాӯथ ʲSansan Tech MeetupʳAndroid։ൃTipsΛ3ࣾͷΤϯδχΞ͕ޠΔ 2020/12/18
ࣗݾհ • ాӯथ (@jakalada) • AndroidΤϯδχΞ • 2΄ͲલʹΫϥεϝιουʹస৬ • ૣ͘ాΜ΅ͷ༷ࢠΛݟʹߦ͖͍ͨ
2
։ൃࣄྫ ʢ˞ଞࣾʹҾ͖ܧ͍ͩࣄྫؚ·Ε͍ͯ·͢ʣ 3
ࢲ͕࡞ͬͯΔΞϓϦ ֓ཁ ҿ৯ళͷΞϓϦ ༗ޮձһ ສਓ ˞ۙؒʹͰϩάΠϯͨ͜͠ͱͷ͋Δձһ %"6."6 ສສ ˞J04"OESPJEͷ߹ܭ ετΞධՁ
લޙ ˞ΞϓϦϨϏϡʔಋೖޙ㽉
ΞδΣϯμ • Webίϯςϯπͱ࿈ܞ͢Δٕज़ • WebView / ϒϥβىಈ / Custom Tabs
/ TWA • ٕज़͝ͱͷҧ͍ • UI / CookieɾΩϟογϡཧ / Webٕज़ͷ੍ݶ 5
6 Webίϯςϯπͱ ࿈ܞ͢Δٕज़
7 WebView
WebView • View • Fragment/ActivityʹΈࠐΊΔ 8
WebViewͷ༻ྫ • WebView͔ΒͷϦΫΤετͷUser-AgentʹΞϓϦݻ༗ͷΛՃ • →WebͰग़͚͠ɺJavaScriptͰදࣔ༰Λ੍ޚ • WebͰϨϯμϦϯά͞ΕͨΫʔϙϯͷόʔίʔυΛΞϓϦͰදࣔ • →ΞϓϦଆͰը໘Λ໌Δͯ͘͠όʔίʔυϦʔμʔͰಡΈऔΓ্͢͞ •
ΞϓϦͰϩάΠϯ͍ͯ͠Δ߹ࣗಈͰϩάΠϯ • →JWTϩάΠϯΛ༻ 9
10 ϒϥβىಈ
ϒϥβىಈ • Intentૹ৴ʹΑΔϒϥβΞϓϦ ͷىಈ 11
12 Custom Tabs
Custom Tabs • ΞϓϦϒϥβ • ϒϥβΞϓϦͷActivity • ※ChromeҎ֎ͷҰ෦ͷϒϥβαϙʔτ • ࠷ݶͷU/IɺΧελϚΠζՄೳ
13
Custom TabsͷߴԽ • ϒϥβଆͷެ։Serviceʹbind • warmup() : ىಈͷߴԽ • mayLaunchUrl()
: WebϖʔδͷϓϦϩʔυ 14
Custom TabsΛಋೖͨ͠ܦҢ • ΞϓϦͷϓϩϞʔγϣϯͷܦ࿏͕૿͑ͨλΠϛϯάͰɺϒϥβ͕ ىಈ͢Δ͜ͱʹ͍ͭͯiOSͷϨϏϡʔ͕େߥΕͨ͠ɻAndroidएׯ • ݱࡏϒϥβΛىಈ͍ͯͨ͠໘ͰɺΞϓϦϒϥβ ʢCustom TabsʣΛ༻ 15
16 TWA
TWA • Trusted Web Activity • ChromeͷActivity • ϑϧεΫϦʔϯදࣔՄೳ 17
TWAͷىಈϑϩʔ 1. Digital Asset LinksΛ༻ͨ͠ݕূ ➡ ࣦഊͨ͠ΒCustom TabsͰىಈ 2. Chrome͕TWAΛαϙʔτ͍ͯ͠Δ͔֬ೝ
➡ αϙʔτ͍ͯ͠ͳ͍όʔδϣϯͰCustom TabsͰىಈ 3. TWAΛىಈ 18
৴པͰ͖ͳ͍ ৴པͰ͖Δ 19
https://dev.classmethod.jp/articles/report-developers-io-2019-tokyo- developersio_cafe_pwa/ 20
21 ٕज़͝ͱͷҧ͍
UI 8FC7JFX 6*ͳ͠ɾಠࣗʹ࣮Ͱ͖Δ ϒϥβىಈ ΧελϚΠζෆՄ $VTUPN5BCT γϯϓϧͳ6*ɾΧελϚΠζՄೳ 58" ϑϧεΫϦʔϯ 22
CookieɾΩϟογϡཧ 8FC7JFX ࣗͷΞϓϦͰཧ ˞ΞϓϦ͔Β੍ޚՄೳ ϒϥβىಈ ϒϥβ͕ཧɾڞ༗ ˞ΞϓϦ͔Β੍ޚෆՄ $VTUPN5BCT 58" 23
Webٕज़ͷ੍ݶ 8FC7JFX ੍ݶ͋Γ ػೳ͝ͱʹΞϓϦଆͰ༗ޮԽ͕ඞཁ 04ߋ৽ঢ়گͰಈ࡞ʹࠩҟ͋Γ ϒϥβىಈ ϒϥβ͕αϙʔτ͍ͯ͠Δٕज़ ˞58"ݫີʹ$ISPNF͕αϙʔτ͍ͯ͠Δٕज़ $VTUPN5BCT 58"
24
·ͱΊ 25
·ͱΊ 8FC7JFX ΞϓϦ͚ͷ8FCϖʔδΛදࣔ͢Δ ˞੍ݶΛཧղɾௐͯ͠8FCΛ੍࡞͢Δඞཁ͕͋Δ ϒϥβىಈ ෆಛఆͷ8FCϖʔδΛදࣔ͢Δ Ϣʔβʔ͕ΞϓϦ͔ΒΕͯྑ͍ $VTUPN5BCT ΞϓϦͷମݧͷҰ෦ͱͯ͠8FCϖʔδΛද͍ࣔͨ͠ 8FCͷٕज़Λࣗ༝ʹ͍͍ͨ
58" 18"ΛϑϧεΫϦʔϯͷΞϓϦͱͯ͠ެ։͍ͨ͠߹ ˞18"Ͱͳͯ͘ྑ͍ 26
ࢀߟࢿྉ • Web-based content | Android Developers • https://developer.android.com/guide/webapps •
Custom Tabs | Web On Android | Google Developers • https://developers.google.com/web/android/custom-tabs • Trusted Web Activity | Web On Android | Google Developers • https://developers.google.com/web/android/trusted-web-activity 27