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
FlutterにiOS 14などの新機能を取り込むには
Search
Shotaro Tao
December 21, 2020
Programming
2
950
FlutterにiOS 14などの新機能を取り込むには
Flutter × Kotlin Multiplatform by CyberAgent 2020/12/21
Shotaro Tao
December 21, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
速いWebフレームワークを作る
yusukebe
5
1.7k
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
220
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
210
AIエージェント開発、DevOps and LLMOps
ymd65536
1
380
🔨 小さなビルドシステムを作る
momeemt
3
660
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
690
MCPで実現するAIエージェント駆動のNext.jsアプリデバッグ手法
nyatinte
7
1k
複雑なドメインに挑む.pdf
yukisakai1225
5
970
Microsoft Orleans, Daprのアクターモデルを使い効率的に開発、デプロイを行うためのSekibanの試行錯誤 / Sekiban: Exploring Efficient Development and Deployment with Microsoft Orleans and Dapr Actor Models
tomohisa
0
230
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
200
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
1.8k
rage against annotate_predecessor
junk0612
0
160
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Scaling GitHub
holman
463
140k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Typedesign – Prime Four
hannesfritz
42
2.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
A Tale of Four Properties
chriscoyier
160
23k
Unsuck your backbone
ammeep
671
58k
Done Done
chrislema
185
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
Shotaro Tao 2020-12-21 Flutter ʹ iOS 14 ͳͲͷ৽ػೳΛऔΓࠐΉʹ Flutter ×
Kotlin Multiplatform by CyberAgent
# ՝ ωΠςΟϒίʔυΛΘͣʹΞϓϦ։ൃ͕Ͱ͖ΔݴޠΛਓʹקΊΔͱ • ͑ɺUIͬͯͲ͏ͳΔͷʁ • ػೳ੍͕ݶ͞Εͦ͏ • iOSɾAndroidʹग़Δ৽͍͠ػೳऔΓೖΕ͍ͨ
# MethodChannelɺEventChannel State Flutter app (client) AppDelegate iOS host FlutterViewController
iOSͷAPI ଞͷϥΠϒϥϦͷAPI ʢCocoapodsܦ༝ͳͲʣ MethodChannel FlutterMethodChannel
σʔλͷड͚͠ StandardMessageCodec Dart null bool Int double String List Map
Swift nil Bool Int Double String Array Dictionary Kotlin null Boolean Int Double String List HashMap MessageCodec ByteDataΛݩʹΤϯίʔυͱσίʔυΛߦ͏ϝιουΛ࣮
MethodChannelɺEventChannelͷ͍ํ
MethodChannelɺEventChannelͷ͍ํ
MethodChannelɺEventChannelͷ͍ํ
ύοέʔδ
ύοέʔδ
ύοέʔδ
ύοέʔδ
ύοέʔδ
·ͱΊ • MethodChannelEventChannelΛར༻͢Δ͜ͱͰσʔλͷΓͱΓ͕ग़དྷΔ • ௨ৗͷΞϓϦͰར༻͢Δ༷ͳҐஔใͷऔಘɺσόΠεใͷऔಘɺϩʔΧ ϧετϨʔδͷσʔλͷอଘɺϒϥβͷදࣔͳͲϥΠϒϥϦͱͯ͠ެ ։͞Ε͍ͯΔ
App ClipsɺWidgets (iOS 14) • ωΠςΟϒͰ࣮ͯ͠ɺσʔλͷΓͱΓ͚ͩMethodChannel EventChannelΛར༻͢Δ • ϝΠϯΞϓϦͱผʹFlutterEngineFlutterViewControllerΛ༻ҙͯ͠Flutter Ͱ࣮͢Δ
FlutterͷΈ Flutter Engine Dart Framework Platform-Speci f i c
App Clips 10MB 10.6MB <
App Clips
Widgets (iOS 14) Widgets Flutter shared_preferences ߋ৽(MethodChannel)