iOSのCallKitフレームークとSkyWay

4.6K Views

March 07, 21

スライド概要

SkyWay UG Tokyo #4

profile-image

iOS / Swift / Firebase / WebRTC / 機械学習 / 最近はzennに記事書いてます

シェア

埋め込む »CMSなどでJSが使えない場合

各ページのテキスト
1.

iOSのCallKitフレームークと SkyWay SkyWay UG Tokyo #4

2.

自己紹介 • 依藤 充範(@yorifuji) • SIerのソフトウェアエンジニア • WebRTC(SkyWay)を触り始めたのは1年程前

3.

CallKit • iOS 10 以降で使える標準フレームワーク • OSが用意している 通話UI が利用できる

4.

通話アプリに必要なもの • CallKit が提供するのは 通話UI のみ • ビデオ・音声通話部分はアプリ側で実装が必要 • WebRTC などを使う

5.

SkyWayとCallKitを使ったビデオ通話アプリ https://github.com/yorifuji/skyway-callkit-sampler

6.

できること • • CallKit の基本的な挙動が試せます • 2台の端末でアプリを起動して、接続先のPeerを選択 • 呼び出された側に着信画面が表示、応答すると通話開始 iPadでもOK、SimulatorはCallKit非対応のためNG

7.

接続のシーケンス 発信側 着信側 peer.connect() peer.call() peer.answer()

8.

補足 • 実用的な通話アプリでは起動していなくても着 信できる必要がある • PushKit 通知を送るとアプリがバックグラウン ドで起動して通話ができる 8

9.

PushKit による発信・着信 2.PushKit 通知 APNs APIサーバ 1.発信 3.通知(着信) 4.通話(WebRTC)

10.

CallKit を触ってみた感想

11.

ビデオ通話との相性が良くない • 端末がロック状態で着信するとユーザーがロッ ク解除するまでアプリ側の画面が表示されない 着信 応答 ロック解除 応答(非ロック時)

12.

中国向けAppStoreで配信するアプ リはCallKitを利用できない • AppStoreConnect(iTunesConnect)にCallKitを使ったアプ リを申請したらリジェクト • 中国向けAppStoreで配信されるアプリは CallKit 機能が deactivateされている必要があるため • このケースでは配信先から「中国本土」を外して審査は通過 • レビュワーコメントに「CallKit が中国では not active されて いるなら Resolution Center でコメントしてね」との記載あり

13.

まとめ • CallKit を使うとiOSの通話UIが組み込める • ビデオ・音声通話部分はアプリ側で実装する • SkyWayとの組み合わせもOKでした👍

14.

ご静聴ありがとうございました