iOS
复制一个包含安装步骤和此插件的完整 Markdown 指南的配置提示。
iOS 行为的工作原理
标题为“iOS 行为的工作原理”在 iOS 上,插件会将来电电话报告给 CallKit。这样你就可以获得系统的来电电话sheet和标准化的呼叫操作,而不必自己构建原生来电电话 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, },});处理类型
标题:处理类型使用 ios.handleType 控制 CallKit 格式化处理的方式:
generic用于应用程序特定的标识符phoneNumber用于真实的电话号码emailAddress用于基于电子邮件的身份
背景 incoming calls
标题:背景 incoming calls此插件不会为您注册 PushKit 或 APNs。
要在 iOS 上实现真正的背景或终止状态的铃声,主机应用程序仍然需要匹配您的传输策略的原生 Apple 推送设置:
- 在使用 Apple 推送服务时,启用推送通知。
- 当您的应用使用 VoIP 推送流时,启用 VoIP 背景模式。
- 当 Capacitor 桥接可用时,立即将 incoming-call 事件传递给您的应用并调用此插件。
如果您的铃声事件仅在 JavaScript 中存在,且应用已在前台运行,则会获得最佳体验。
麦克风和摄像头权限
麦克风和摄像头权限CallKit 不会替代您的媒体 SDK。如果真实的呼叫会话使用麦克风或摄像头访问,那么这些使用说明仍然需要在您的应用中。
<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>仅添加您的真实呼叫流程所需的键。
在您的应用层中保留这些责任
在您的应用层中保留这些责任- 推送 Kit 和 APNs 注册
- 身份验证和令牌刷新
- 加入实时房间或VoIP会话后
callAccepted - 当插件发出时,结束或恢复远程调用状态
callDeclined,callEnded或callTimedOut