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.8k
2019-05-18-gdg-kyoto-jakalada.pdf
jakalada
0
850
mobilemethod-osaka-2018-11-09-jakalada-android
jakalada
0
1.2k
Other Decks in Technology
See All in Technology
20251014_Pythonを実務で徹底的に使いこなした話
ippei0923
0
220
Geospatialの世界最前線を探る [2025年版]
dayjournal
1
260
Azureコストと向き合った、4年半のリアル / Four and a half years of dealing with Azure costs
aeonpeople
1
220
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
10
5.1k
ニッポンの人に知ってもらいたいGISスポット
sakaik
0
170
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
310
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
リセラー企業のテクサポ担当が考える、生成 AI 時代のトラブルシュート 2025
kazzpapa3
1
370
私のMCPの使い方
tsubakimoto_s
0
110
衛星画像超解像化によって実現する2D, 3D空間情報の即時生成と“AI as a Service”/ Real-time generation spatial data enabled_by satellite image super-resolution
lehupa
0
190
『バイトル』CTOが語る! AIネイティブ世代と切り拓くモノづくり組織
dip_tech
PRO
1
130
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
400
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
4.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
GitHub's CSS Performance
jonrohan
1032
470k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
The Cult of Friendly URLs
andyhume
79
6.6k
Practical Orchestrator
shlominoach
190
11k
Agile that works and the tools we love
rasmusluckow
331
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
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