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アプリ開発にネイティブコードはどこまで求められるのか
Search
akatsuki174
September 12, 2022
Programming
2
5.2k
Flutterアプリ開発にネイティブコードはどこまで求められるのか
2022/09/12 iOSDC Japan 2022 day2
akatsuki174
September 12, 2022
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
320
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
620
私が変えてきたこと、変えなかったこと
akatsuki174
2
920
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
220
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
110
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
5.9k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
480
オフライン勉強会ぼっち対策
akatsuki174
1
670
Xcode 15の新機能
akatsuki174
0
2.8k
Other Decks in Programming
See All in Programming
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
290
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
160
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
700
CSC509 Lecture 11
javiergs
PRO
0
310
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
140
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
220
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
360
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
980
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
150
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
320
CSC509 Lecture 13
javiergs
PRO
0
250
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
2
440
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Gamification - CAS2011
davidbonilla
81
5.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8k
Faster Mobile Websites
deanohume
310
31k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
Code Review Best Practice
trishagee
72
19k
The Invisible Side of Design
smashingmag
302
51k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
The Cult of Friendly URLs
andyhume
79
6.7k
Transcript
FlutterΞϓϦ։ൃʹ ωΠςΟϒίʔυ Ͳ͜·ͰٻΊΒΕΔͷ͔ iOSDC Japan 2022 day2 @akatsuki174 ࠓ͕࣌ؒͳ͍͔Β͜͜ͷཝͰࣗݾհ͍ͯ͘͠Ϥʂ
݁ ͍ͬͺ͍χίಈίϝϯτ͘ΕΑͳʂʂʂ
ʢύοέʔδʹཔΕʣ ଟ͘ͷέʔεͰ ωΠςΟϒίʔυΛॻ͔ͣʹ ࣮Ͱ͖Δ ໊લɿਢ౻ຘ
۩ମྫ ʮFammϓϦϯτʯ ΞΧϯτɿ@akatsuki174
iOSΤϯδχΞྺɿ్Εͭͭ7͘Β͍ʁ
• ࣸਅϐοΧʔͷදࣔ • In-App Review • Sign in with Apple
• Sign in with Google • ϓογϡ௨ AndroidΤϯδχΞྺɿ3 ωΠςΟϒ͕ؔ͋Γͦ͏ͳػೳ
FlutterΤϯδχΞྺɿ ࣸਅϐοΧʔͷදࣔ
࠷ۙFlutter8ׂɺiOS1ׂɺAndroid1ׂ͘Β͍…ʁ In-App Review
ॴଐɿגࣜձࣾTimers Sign in with Apple / Sign in with Google
جຊతʹϑϧϦϞʔτͰۈத ϓογϡ௨
ڈୈҰࢠग़࢈👶 ͜ͷϓϩϙʔβϧΛॻ͍ͨ࣌
ࠓϑϧλΠϜ෮ؼ ࣗͨͪͰॻ͍ͨωΠςΟϒίʔυ ΄΅0%
࠷ۙͷଉࢠͷϒʔϜɿʢָثͷํͷʣΩʔϘʔυ͍͡Γ ࠓݱࡏ5%Ҏ͘Β͍
• ਖ਼֬ʹݴ͏ͱɺαʔυύʔςΟͷpackageʢiOSͰݴ͏ͱ͜Ζͷɹ ϥΠϒϥϦʣ͕ඇৗʹॆ࣮͍ͯͯ͠ɺࣗͰॻ͘ඞཁ͕͋·Γͳ͍ iOSDC Japan 2022 ίΞελοϑ ͑ɺ͜Μͳগͳ͍ͷʁʁ
• sign_in_with_apple • sing_in_with_google ίΞελοϑྺɿ2017-2020, 2022ͷܭ5ճ ೝূ
• in_app_review iOSDC Japanͷελοϑͨͪ໌Δͯ͘ΞοτϗʔϜͰ͢ʢདྷͥͻελοϑࢀՃΛʂʣ ϨϏϡʔґཔ
• fl utter_native_image • fl utter_image_compress iOSDCޙʹΓ͍ͨ͜ͱɿ🦑3 ը૾ѹॖ
• ΧϝϥͰΫϨδοτΧʔυ൪߸ಡΈऔΓ • ͍͍ͨSDK͕FlutterରԠ͞Ε͍ͯͳ͔ͬͨͨΊ ࠷ۙେมͩͬͨ͜ͱɿ͜ͷొஃࢿྉ࡞Γʢ༰ʴ͜ͷࣗݾհͷωλग़͠...ʣ ωΠςΟϒίʔυॻ͍ͯΔՕॴ
• Image.toByteDataͷ෦ • ը૾ੜͳͲͰ༻͍ͯ͠Δ͕͍ • ωΠςΟϒͱൺΔͱ10ഒ͘Β͍ͷ͕ࠩ͋ΔͬΆ͍ ࣥචએɿڈWEB+DB PRESSͰiOS 15ಛूॻ͍͔ͨΒݟͯͶʂ ͪͳΈʹɿকདྷωΠςΟϒͰॻ͖͍ͨͱ͜Ζ
• PlatformChannelsͱ͍͏ΈΛ͏ • ωΠςΟϒଆͰॻ͍ͨίʔυΛFlutterଆͰݺͼग़͢ • ެࣜͷྫΛݩʹઆ໌ • https://docs. fl utter.dev/development/platform-integration/
platform-channels ωλΕͨ...ʢεϥΠυଟ͍ͳʣ ωΠςΟϒAPIʹΞΫηε͢Δʹ
͜ͷ͋ͱ1֊ͷަྲྀεϖʔεͰ͓ձ͍͠·͠ΐ͏ʂ IUUQT fl VUUFSEFWEPDT EFWFMPQNFOUQMBUGPSNJOUFHSBUJPO QMBUGPSNDIBOOFMT
fortee͔ΒͷτʔΫϑΟʔυόοΫΑΖ͓͘͠ئ͍͠·͢ʂ Flutterଆ
Flutterɺͥͻ৮ͬͯΈͯͶʂ໘ന͍Αʂ Flutterଆ
Γগ͠ͱͳͬͨiOSDC Japan 2022ɺଘʹָ͠Έ·͠ΐ͏ʂʂʂ Swiftଆ
٩( 'ω' )و ͓ʔʂ Swiftଆ
• ศརͳύοέʔδ͕ଟग़͍ͯΔͷͰɺࣗͰωΠςΟϒίʔυΛ ॻ͔ͳͯ͘ଟ͘ͷػೳΛ࣮ݱͰ͖ΔΑ • ͽͬͨΓͷύοέʔδ͕ͳͯ͘ɺPlatformChannelsΛ͑ɹɹ ωΠςΟϒίʔυΛݺͼग़ͤΔΑ ٩( 'ω' )و ͓ʔʔʔʂ
·ͱΊ
• ͜ͷεϥΠυࢿྉ • ͢ͰʹTwitterʹΞοϓ͍ͯ͠Δͣ • จࣈ൛ొஃࢿྉ • ޙձࣾͷςοΫϒϩάͰެ։༧ఆ • TimersςοΫϒϩάΛνΣοΫͯ͠Ͷʂ
Γͬͨͥʂʂʂʂʂ ొஃࢿྉ
• αʔόʔαΠυΤϯδχΞ (PHP, Golang, AWS) • AndroidΤϯδχΞ (Kotlin) • iOSΤϯδχΞ
(Swift) TimersͰݱࡏΤϯδχΞશ৬छ࠾༻தʂ ৄ͘͠”Timers”Ͱݕࡧ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ