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
5分でわかるWebView+ViewGroupを実現するAOSPメールアプリの内部実装と ニ...
Search
ogapants
March 18, 2019
Technology
0
730
5分でわかるWebView+ViewGroupを実現するAOSPメールアプリの内部実装と ニュースアプリへの応用 / Otemachi.apk02
Otemachi.apk #02
https://nikkei.connpass.com/event/120816/
ogapants
March 18, 2019
Tweet
Share
More Decks by ogapants
See All by ogapants
WebView+ViewGroupを実現するAOSPメールアプリの内部実装とニュースアプリへの応用 / DroidKaigi2019
ogapants
3
3.6k
ScrollViewで 読了計測した話
ogapants
0
830
「AndroidはiOSと同じデザインで!」と言われたときのTips
ogapants
17
8.4k
たのしいAndroidかいはつ
ogapants
0
160
Fabric Digitsで始めるSMS認証
ogapants
1
1.2k
MediaController をカスタマイズするぞ
ogapants
0
2.7k
Other Decks in Technology
See All in Technology
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
490
LLMを搭載したプロダクトの品質保証の模索と学び
qa
1
1.1k
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
450
いま注目のAIエージェントを作ってみよう
supermarimobros
0
360
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
1.9k
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
6
750
roppongirb_20250911
igaiga
1
250
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
エンジニアが主導できる組織づくり ー 製品と事業を進化させる体制へのシフト
ueokande
1
110
Apache Spark もくもく会
taka_aki
0
140
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
It's Worth the Effort
3n
187
28k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Writing Fast Ruby
sferik
628
62k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
BBQ
matthewcrist
89
9.8k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Transcript
(5ͰΘ͔Δ) WebView+ViewGroupΛ࣮ݱ͢Δ AOSPϝʔϧΞϓϦͷ෦࣮ͱ χϡʔεΞϓϦͷԠ༻ 2019/03/18 Otemachi.apk #02 @ogapants
ࣗݾհ • ͓͕ͺΜ@ogapants • ຊܦࡁ৽ฉࣾ • DroidKaigi2019Ͱ30ͨ͠༰ͷॖ൛Ͱ͢
͍͖ͳΓͰ͕͢ • ͜͏͍͏ߏͷը໘ɺͲ͏ͬͯ εΫϩʔϧͤ͞·͔͢ʁ ViewGroup WebView ViewGroup
͍͖ͳΓͰ͕͢ • ScrollViewͰ ғͬͪΌ͍·ͤΜ͔ʁ WebView ScrollView? ViewGroup ViewGroup
͍͖ͳΓͰ͕͢ • ScrollViewWebViewΛೖΕΔ͜ͱΛఆͯ͠ ࡞͍ͬͯͳ͍ʂ by GoogleΤϯδχΞ
͜ͷൃදͰ͢͜ͱ • AOSPϝʔϧͰWebViewͲ͏ΘΕ͍ͯΔͷ͔ • Ͳ͏ܦΞϓϦʹԠ༻ͨ͠ͷ͔ • WebView+ViewGroupΛ࣮ݱ͢ΔͨΊͷࢦඪ
WebView+ViewGroupΛ ࣮ݱ͢ΔAOSPϝʔϧΞϓϦͷ ෦࣮
AOSPϝʔϧΞϓϦͰͷߏ ϔομʔViewGroup ίϯςϯπWebView ϑολʔViewGroup
AOSPϝʔϧΞϓϦͰͷߏ WebView in ScrollView AOSPϝʔϧΞϓϦ WebView ViewGroup ScrollView ViewGroup WebView
ViewGroup ViewGroup
AOSPϝʔϧΞϓϦͰͷߏ • WebViewͰεΫϩʔϧͤ͞Δ • ViewGroup࿈ಈ • ViewGroupͷߴ͞cssͰpadding WebView ViewGroup ViewGroup
padding padding
AOSPϝʔϧΞϓϦ͍͢͝
χϡʔεΞϓϦͷԠ༻
ϓϩμΫτೖ·ͰͷྲྀΕ • WebView in ScrollViewΛࣙΊΔඪ • AOSPʹࢀߟʹͳΔ࣮͕ͳ͍͔୳͢ • ෦࣮ΛಡΈਐΊΔ •
࠷ݶͰಈ͘ΞϓϦΛ࡞ͬͯݕূ • ϓϩμΫτʹೖ
ϓϩμΫτೖ • ϑολʔͷΈඞཁͳը໘͔Β࣮ࢪ WebView ϑολʔViewGroup
࣮ࡍͲ͏ͩͬͨͷ͔
࠾༻ͯ͠Α͔ͬͨ͜ͱ • ScrollView͔Β٫Ͱ͖ͨ • ඳը͕एׯૣ͘ͳͬͨ
࠾༻ͯ͠େมͩͬͨ͜ͱ • Մಡੑ͕Լ͕Γɺϝϯςίετ͕૿͑ͨ • ಋೖ͢Δ·Ͱ͕͔͔࣌ؒͬͨ
ਖ਼ؾܰʹਅࣅͮ͠Β͍…
͠WebView+ViewGroup͠ ͨ͘ͳͬͨΒʁ
͠ඞཁʹഭΒΕͨΒ… • WebViewΛΊΔʢ࠷ਪʣ • WebViewͷΈʹ͢Δʢڧ͘ਪʣ • AOSPϝʔϧํࣜΛࢀߟʹ͢Δʢਪʣ
͠ඞཁʹഭΒΕͨΒ… • https://github.com/angebagui/medium-textview/ https://github.com/m7mdra/HtmlRecycler ͷϥΠϒϥϦΛͬͯΈΔʢرʣ • ৽͍͠ΓํΛߟ͑Δʢେ݀ʣ • ScrollViewʹWebViewΛೖΕΔʢඇਪʣ
͍͞͝ʹ
·ͱΊ • AOSPݟͷմͳͷͰ͏·͘ར༻͠Α͏ • ࠷ݶͷ࣮Ͱ༷ࢠΛݟ࣮ͯફ͠Α͏ • ScrollViewͷதʹWebViewΛೖΕΔͷආ͚Α͏
ڵຯ࣋ͬͨํશ൛Λʂ https://bit.ly/2HmOv2V
࠾༻ͬͯ·͢ʂ https://s.nikkei.com/s_android