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
880
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
Macとオーディオ再生 2024/11/02
yusukeito
0
370
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
110
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
1
300
Contemporary Test Cases
maaretp
0
140
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
880
Remix on Hono on Cloudflare Workers
yusukebe
1
290
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
120
受け取る人から提供する人になるということ
little_rubyist
0
230
Featured
See All Featured
Docker and Python
trallard
40
3.1k
A Tale of Four Properties
chriscoyier
156
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
The Language of Interfaces
destraynor
154
24k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Typedesign – Prime Four
hannesfritz
40
2.4k
Building Your Own Lightsaber
phodgson
103
6.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
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)