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
Ken Jumbo Haneda
August 07, 2017
Programming
2
1.1k
WebRTC入門者LT会 #2 「Skyway + iOS + MVVMで通話アプリ開発」
Skyway + iOS + MVVMで通話アプリ開発
Ken Jumbo Haneda
August 07, 2017
Tweet
Share
More Decks by Ken Jumbo Haneda
See All by Ken Jumbo Haneda
Vue.jsのない会社にVue.jsを入れていく
jumbo_ken
0
540
20200115_skyway_ug_6
jumbo_ken
0
500
サブスクミートアップ2.pdf
jumbo_ken
0
870
20180614_AppsJapan
jumbo_ken
1
420
WebRTCリリースで辛かったこと
jumbo_ken
2
1.5k
アプリを作ってて気づいた、 教育サービスの難しいところ
jumbo_ken
1
1.5k
WebRTCで実現する次世代英会話と旧世代式開発手法
jumbo_ken
0
2k
bonfire android #2
jumbo_ken
1
1.1k
iOSでのSkyWay開発の勘所とTips (リリース後・新SDK編)
jumbo_ken
0
5.9k
Other Decks in Programming
See All in Programming
TypeScript エンジニアが Android 開発の世界に飛び込んだ話
yuisakamoto
6
890
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
110
iOSアプリ開発もLLMで自動運転する
hiragram
6
2.1k
Design Pressure
hynek
0
1.4k
ソフトウェア品質特性、意識してますか?AIの真の力を引き出す活用事例 / ai-and-software-quality
minodriven
19
6.5k
Zennの運営完全に理解した #完全に理解したTalk
wadayusuke
1
120
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
7
370
Rethinking Data Access: The New httpResource in Angular
manfredsteyer
PRO
0
210
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
510
Blueskyのプラグインを作ってみた
hakkadaikon
1
230
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
120
がんばりすぎないコーディングルール運用術
tsukakei
1
160
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
76
5.8k
Bash Introduction
62gerente
614
210k
Raft: Consensus for Rubyists
vanstee
137
7k
Optimizing for Happiness
mojombo
378
70k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
Building an army of robots
kneath
306
45k
Thoughts on Productivity
jonyablonski
69
4.7k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Making Projects Easy
brettharned
116
6.2k
Documentation Writing (for coders)
carmenintech
71
4.8k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
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ʹೖΕ͍ͨ ɾαϯϓϧݟͯͯϦϑΝΫλͨ͘͠ͳͬͨ ײँͷϓϧϦΫૹΓ͍ͨؾ͕࣋ͪժੜ͑·ͨ͠