コンテンツにスキップ

iOS

GitHub

iOSの動作のしくみ

「iOSの動作のしくみ」

iOSでは、プラグインはCallKitに着信の通知を報告します。これにより、システムの着信シートと標準化されたコールアクションが提供されます。独自のネイティブの着信UIを構築する必要がなくなります。

requestPermissions() iOSでは、CallKit自体が実行時許可ダイアログを必要としないため、すぐに解決されます。

基本的な例

「基本的な例」
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+1 555 010 020',
ios: {
handleType: 'phoneNumber',
supportsHolding: true,
supportsDTMF: false,
},
});

ハンドルの種類

「ハンドルの種類」

を使用して、CallKitがハンドルのフォーマットを制御します: ios.handleType アプリ固有の識別子

  • generic for app-specific identifiers
  • phoneNumber 実際の電話番号用
  • emailAddress メールベースのアイデンティティ用

バックグラウンドIncomingコール

バックグラウンドIncomingコール

このプラグインはPushKitまたはAPNsを登録しません。

iOSの真のバックグラウンドまたは終了状態のリング音を実現するには、ホストアプリは、トランスポート戦略に合ったネイティブのAppleプッシュセットアップが必要です。

  1. トランスポートがAppleプッシュ配信を使用する場合、Push通知を有効にします。
  2. VoIPプッシュフローを使用するアプリで、VoIPバックグラウンドモードを有効にします。
  3. Incomingコールイベントをアプリに送信し、Capacitor ブリッジが利用可能になるまで、このプラグインを呼び出します。

アプリがすでにフォアグラウンドで実行されている場合、JavaScriptでのリングイベントが存在する場合、最良のエクスペリエンスを得ることができます。

マイクとカメラの許可

マイクとカメラの許可

CallKit does not replace your media SDK. If the real call session uses microphone or camera access, those usage descriptions still belong in your app:

<key>NSMicrophoneUsageDescription</key>
<string>This app uses the microphone for calls.</string>
<key>NSCameraUsageDescription</key>
<string>This app uses the camera for video calls.</string>

あなたの実際の通話フローに必要なキーだけを追加してください。

セクション:アプリ層でこれらの責任を維持する

PushKitとAPNsの登録
  • 認証とトークン更新
  • 実際のルームまたはVoIPセッションに参加する
  • プラグインが発行したときに、リモートの通話状態を終了または調整する callAccepted
  • callDeclined, callEndediOSから続けてください callTimedOut

セクション: iOSから続けてください

protectedTokens

If you are using iOS を使用して Using @capgo/capacitor-incoming-call-kit for the native capability in Using @capgo/capacitor-incoming-call-kit, Using @Capgo/__CAPGO_KEEP_1__-incoming-call-kit Capgo Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, Capacitorの __CAPGO_KEEP_0__ Adding or Updating Pluginsの詳細を参照してください。 Ionic エンタープライズ プラグインの代替品の製品ワークフローについて。