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
WebRTC入門者LT会 #2 「Skyway + iOS + MVVMで通話アプリ開発」
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ken Jumbo Haneda
August 07, 2017
Programming
1.1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebRTC入門者LT会 #2 「Skyway + iOS + MVVMで通話アプリ開発」
Skyway + iOS + MVVMで通話アプリ開発
Ken Jumbo Haneda
August 07, 2017
More Decks by Ken Jumbo Haneda
See All by Ken Jumbo Haneda
Vue.jsのない会社にVue.jsを入れていく
jumbo_ken
0
610
20200115_skyway_ug_6
jumbo_ken
0
570
サブスクミートアップ2.pdf
jumbo_ken
0
920
20180614_AppsJapan
jumbo_ken
1
500
WebRTCリリースで辛かったこと
jumbo_ken
2
1.6k
アプリを作ってて気づいた、 教育サービスの難しいところ
jumbo_ken
1
1.6k
WebRTCで実現する次世代英会話と旧世代式開発手法
jumbo_ken
0
2.1k
bonfire android #2
jumbo_ken
1
1.1k
iOSでのSkyWay開発の勘所とTips (リリース後・新SDK編)
jumbo_ken
0
6k
Other Decks in Programming
See All in Programming
Go 1.27 における memory allocation の高速化
andpad
0
270
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
190
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
490
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
200
FastAPI の並行処理モデルを完全に理解する
hoto17296
1
350
リアルな遅延を測る仕様
kota_yata
1
120
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
160
freeeにおけるEvalsの実践例の紹介
freee
PRO
0
130
Cloudflare is Agents
chimame
0
170
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
330
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
270
Featured
See All Featured
Abbi's Birthday
coloredviolet
3
9.4k
How to Talk to Developers About Accessibility
jct
2
520
Building AI with AI
inesmontani
PRO
1
1.1k
Code Review Best Practice
trishagee
74
20k
Mobile First: as difficult as doing things right
swwweet
225
10k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
390
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
My Coaching Mixtape
mlcsv
0
250
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
Designing for humans not robots
tammielis
254
26k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
SKYWAY + IOS + MVVMͰ௨ ΞϓϦ։ൃ Kentaro Haneda (@jumboOrNot)
ࣗݾհ ▸ Mobile Developer@RareJob ▸ Lead Developer@Landskip Kentaro
Haneda (@jumboOrNot) ˎδϟϯϘͱݺΜͰ͍ͩ͘͞
ɾडߨऀ50ສਓͷΦϯϥΠϯӳձαʔϏε ɾ࠾༻1%ͷ༏উͳߨࢣͱ25187ԁͰͤ·͢ ɾ6࣌ ~ 25࣌·Ͱຖ։ߨ ɾ59%ͷਓ͕ॳ৺ऀ ɾແྉମݧ࣮ࢪதʂʂ ϨοεϯSkypeͰఏڙ͍ͯ͠·͢ʂ
ࠓि͋ͨΓʹϦϦʔε༧ఆͷ৽ػೳ ʮεϚϗͰϨοεϯβʯ SkywayΛͬͨWebRTCͰͷϨοεϯఏڙΛ Ұ෦։์͠·͢ ʢiOSܦ༝ͷແྉମݧϨοεϯͷҰ෦ߨࢣͷΈʣ
ςΩετ ࠓͷ͓ ▸ εϚϗͰϨοεϯβΛ࡞Δʹ͋ͨͬͯͷ ▸ SkyWay SDKΛͬͨMVVM+Rxͳ࣮ ▸ ௨ΞϓϦʹ͓͚ΔTips ▸
SkywaySDKͬͯݟͯͷײ
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ SKYWAYSDKͱIOS ▸ WebRTCͰͷ࣮࣌ͷΈͲ͜Ζ ▸ Πϕϯτཧ͕ෳࡶʹͳΔʢঢ়ଶ͕ଟ͍ʣ ▸ 1ը໘ͰUIͷมߋ͕සൟʹى͖Δ ▸
ݖݶͷऔಘ࣮͍ΔΑͶ…
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ iOS Architecture Patterns https://techblog.badoo.com/blog/2016/03/21/ios-architecture-patterns/ ͜Μͳ࣌ʹ͍͍ͷ͕MVVM+RxSwift ɾঢ়ଶͱUIΛߏ͢ΔσʔλશͯViewModelɺ͜ΕΛ RxSwiftͰBinding ɾFat
ViewControllerΛආ͚ͯɺSkywaySDK͔Βड͚औΕΔ ΠϕϯτΛཧ͢Δ
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ Skywayؔ࿈ͷΛҰ෦Rx ԽɺStreamΛཧ͘͢͠ ͢Δ ΫϥΠΞϯτଆͷϚΠΫͷ on/offϏσΦͷon/offUI ͱඥͮ͘ͷͰRxԽ ೝূใϢʔβʔͷઃఆͷ มߋʹґଘ͢ΔͷͰRxԽ
ߨࢣͷೖୀࣨ௨৴ͷঢ়ଶ ΛStatusͱͯ࣋ͭ͜͠ͱͰม ߋຖͷUIมߋΛϋϯυϦϯά
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ ංେԽ͕ͪ͠ͳө૾෦ContainerͰ ɾө૾Λཧ͢Δ෦ͱϨοεϯΛཧ͢ΔϩδοΫ ͢Δ
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ https://gist.github.com/jumbo-in-Jap/72e6338c16d7e1fc63d83b40b7bce399 ͬͱRXͷԸܙΛड͚Α͏ Ex. ྫ͑30ඵ͝ͱʹ࠶ଓॲཧΛߦ͍͍ͨ
SKYWAY SDKΛͬͨMVVM+RXͳ࣮ ͬͱRXͷԸܙΛड͚Α͏ Ex. ྫ͑ϚΠΫΧϝϥڐՄ͕औΕͨΒϦΫΤετ͍ͨ͠ https://gist.github.com/jumbo-in-Jap/948754b7a315571bbe0e0ac726117bf7
+ ʹ εοΩϦ
௨ΞϓϦʹ͓͚ΔTIPS εϐʔΧʔ iPhoneͷεϐʔΧʔͷҐஔ͜͜2ͭɻ SkywayͰσϑΥϧτͰԻ͕ग़Δͷ ←ͬͪ͜Ͱ͋Δɻ ͬͪ͜ͱͯԻ͕খ͍͞ɾɾɾ
εϐʔΧʔͷղܾࡦ ௨ΞϓϦʹ͓͚ΔTIPS https://gist.github.com/jumbo-in-Jap/7b4ee398c489c0072cf756720881dad5 Իͷग़ྗઌΛมߋ͢Δɺͨͩมߋ͢Δ͚ͩ͡Όͳ͘ΠϠϗϯΛ͞͠ ͍ͯΔͱ͖มߋͤͣɺΠϠϗϯ͕ൈ͔ΕͨΒมߋ͢Δɻ
SKYWAYSDKͬͯݟͯͷײ ͱͯศརͰແྉͰ͑ͯخ͍͠ͷͰ͕͢ɾɾɾ ɾSDK͕Ϟμϯͳ࣮ʹͳͬͯͳ͍ʢMultiPartySDKpodͷ use_framework!ʹରԠͯ͠ͳ͍ʁʣ ɾΧϝϥɾϚΠΫͷݖݶཧSDKʹೖΕ͍ͨ ɾαϯϓϧݟͯͯϦϑΝΫλͨ͘͠ͳͬͨ ײँͷϓϧϦΫૹΓ͍ͨؾ͕࣋ͪժੜ͑·ͨ͠