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
iOS11は本当にWebRTCに対応したのか
Search
taminif
October 28, 2017
Programming
1
1.4k
iOS11は本当にWebRTCに対応したのか
WebRTC Meetup Osaka #2の発表資料です。
taminif
October 28, 2017
Tweet
Share
More Decks by taminif
See All by taminif
PuppeteerとPlaywrightの15日間の演劇 / relation of Puppeteer and Playwright
taminif
3
2.1k
Redashの開発はじめました / How to get started Redash development
taminif
0
750
私の生活を変えたHeadless Chrome / Headless Chrome who changed my life
taminif
3
480
WebSocketをiOSに持ち込んで辛い思いをした経験がありますか!? / have you painful experience in web socket?
taminif
3
5.7k
LINEで馬券を購入する / Purchase a betting ticket at LINE
taminif
1
1.6k
SkyWayで一年間運用してきたけどWebRTCってつらいんじゃないの
taminif
2
990
オンライン英会話とSkyWay
taminif
0
500
オンライン英会話アプリとSkyWay
taminif
0
450
Mac1台でアプリを作る時代再び
taminif
0
420
Other Decks in Programming
See All in Programming
Cloudflare Realtime と Workers でつくるサーバーレス WebRTC
nekoya3
0
240
Efficiency and Rock 'n’ Roll (Really!)
hollycummins
0
600
Proxmoxをまとめて管理できるコンソール作ってみました
karugamo
1
410
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
120
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
7
380
Javaのルールをねじ曲げろ!禁断の操作とその代償から学ぶメタプログラミング入門 / A Guide to Metaprogramming: Lessons from Forbidden Techniques and Their Price
nrslib
1
300
REST API設計の実践 – ベストプラクティスとその落とし穴
kentaroutakeda
2
320
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
100
Feature Flag 自動お掃除のための TypeScript プログラム変換
azrsh
PRO
4
630
イベントストーミングから始めるドメイン駆動設計
jgeem
3
440
List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'"
philipschwarz
PRO
0
140
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
KATA
mclloyd
29
14k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
460
YesSQL, Process and Tooling at Scale
rocio
172
14k
Designing Experiences People Love
moore
142
24k
Optimizing for Happiness
mojombo
378
70k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
106
19k
GitHub's CSS Performance
jonrohan
1031
460k
Transcript
iOS11ຊʹWebRTC ʹରԠͨ͠ͷ͔ WebRTC Meetup Osaka #2 2017/10/27 େౡ ޫو@sbntaminif
ࣗݾհ • ΣϒϦΦגࣜձࣾWEBΤϯδχΞ + ϓϩμΫτ Ϛωʔδϟʔ • ੈքͰ།ҰɺୈҰճWebRTC Meetup Osaka͔Β
ܧଓͯ͠ొஃͯ͠·͢ • ීஈژͰಇ͍͍ͯ·͢
http://ejje.weblio.jp/content/ios
ͦΕͰ࢝Ί·͢
TL;DR(H) • Safari11ͰϏσΦνϟοτՄೳ • Google ChromeͰϏσΦνϟοτෆՄೳ • TwitterͰURLΛλοϓͨ࣌͠ʹىಈ͢Δ ϒϥβͰϏσΦνϟοτෆՄೳ •
React NativeͷΞϓϦͰϏσΦνϟοτෆՄೳ
TL;DR(H) • Safari11ͰϏσΦνϟοτՄೳ • Google ChromeͰϏσΦνϟοτෆՄೳ • TwitterͰURLΛλοϓͨ࣌͠ʹىಈ͢Δ ϒϥβͰϏσΦνϟοτෆՄೳ •
React NativeͷΞϓϦͰϏσΦνϟοτෆՄೳ +BWB4DSJQU$PSFͰಈ͔ͳ͍͚ͩͰɺ 3FBDU/BUJWFͷ߹SFBDUOBUJWFXFCSUD Λ༻͢ΕϏσΦνϟοτՄೳͰͨ͠ ؒҧͬͨใࣦྱ͍ͨ͠·ͨ͠ɻ
WebRTCͱʢςϯϓϨʣ • W3C͕ఏএ͢ΔP2PϦΞϧλΠϜίϛϡχέʔ γϣϯΛ࣮ݱ͢Δٕज़ • ϓϥάΠϯͳ͠ͰϒϥβؒͷΓͱΓ͕Մೳ • ςΩετόΠφϦͳͲͷσʔλܗࣜө૾ ԻͳͲͷStreamܗࣜͷΓͱΓ͕Մೳ
iOSͰiOS11ͷSafariͰ WebRTCʹରԠ͠·ͨ͠ • getUserMedia • RTCPeerConnection • (RTCDataChannel) ͜ΕΒࡾͭʢ͚ͩͰͳ͍ʣͷ"1*͕ 4BGBSJʹ࣮͞Εͨͱ͍͏͜ͱͰ͢
iOS11ͰWebRTCʹରԠʂ
Ͱɺϒϥβͬͯ Safari͚ͩ͡Όͳ͍Ͱ͢ΑͶ
iOSʹ͋Δϒϥβ • Safari • Google Chrome • Opera • EdgeʢݱࡏϓϨϏϡʔ൛ʣ
• ͳͲͳͲɾɾ
͜ΕΒͰWebRTC ಈ͘ͷ͔ ͦΕΛௐΔͨΊʹɺ ϒϥβͲ͏࣮͞Ε͍ͯΔ ͔ΛΔඞཁ͕͋Γ·͢
ྫ͑Google Chrome https://blog.chromium.org/2016/01/a-faster-more-stable-chrome-on-ios.html 7FSͰ6*8FC7JFX͔Β8,8FC7JFX ʹมߋͨ͠ͱ͍͏هࣄ
SwiftͰ࣮Ͱ͖Δϒϥβ • WKWebView • SFSafariViewController • UIWebView (deprecated)
Safariͱಉ͡Α͏ʹAPI͕ ࣮͞Ε͍ͯΕରԠͯ͠ ͍Δͣ
RTCPeerConnectionͱ getUserMedia͕ଘࡏ͢Δ͔ • WKWebView • SFSafariViewController • UIWebView (deprecated)
શ෦μϝͰͨ͠ • WKWebView • SFSafariViewController • UIWebView (deprecated)
RTCPeerConnetion -> getUserMedia ->
௨৴Ͱ͖Δ͚Ͳ ө૾ͱԻ͕औಘͰ͖ͳ͍
RTCPeerConnection͕͋Ε σʔλ௨৴Ͱ͖Δͷ͔
֤ϒϥβͰDataChannel ͬͯΈΔςετ • αʔόʔʹSkyWayΛ༻ • ࣗલͰαʔόʔ༻ҙͰ͖ͳ͍ • ΞϓϦέʔγϣϯSkyWayͷαϯ ϓϧΛͦͷ··༻
શϒϥβͰಈ͖·ͨ͠ʂ • αʔόʔʹSkyWayΛ༻ • ࣗલͰαʔόʔ༻ҙͰ͖ͳ͍ • ΞϓϦέʔγϣϯSkyWayͷαϯ ϓϧΛͦͷ··༻
·ͱΊ
iOS11ͰWebRTCʹରԠʂ
iOS11ͰWebRTCʹରԠʂ ҧ͏ʂ
iOS11ͰWebRTCʹରԠʂ Safari11ͰWebRTCʹରԠ
͋Γ͕ͱ͏͍͟͝·ͨ͠