iOS
__CAPGO_KEEP_4__
__CAPGO_KEEP_11__
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, },});处理类型
使用来控制 CallKit 如何格式化处理: ios.handleType 用于应用程序特定的标识符
generic用于真实电话号码phoneNumberiOS 行为原理emailAddressfor 邮件身份认证
后台接收呼叫
Section titled “后台接收呼叫”本插件不会为您注册 PushKit 或 APNs。
要在 iOS 上实现真正的后台或终止状态呼叫铃声,需要在主机应用中设置匹配传输策略的原生 Apple 推送设置:
- 在使用 Apple 推送传输的应用中,启用推送通知。
- 在使用 VoIP 推送流的应用中,启用 VoIP 背景模式。
- 将 incoming-call 事件传递给您的应用并在 Capacitor 桥可用时立即调用此插件。
如果您的铃声事件仅存在于 JavaScript 中,则在应用已在前台运行时将获得最佳体验。
麦克风和摄像头权限
Section titled “麦克风和摄像头权限”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>只添加您实际调用流程所需的键。
将这些责任保留在应用层
标题:将这些责任保留在应用层- PushKit 和 APNs 注册
- 身份验证和令牌刷新
- 加入真实房间或 VoIP 会话后
callAccepted - 当插件发出时结束或恢复远程调用状态
callDeclined,callEnded或callTimedOut
继续从 iOS
标题:继续从 iOS如果您正在使用 iOS 连接它来规划原生插件工作 使用 @capgo/capacitor-incoming-call-kit 使用 @capgo/capacitor-incoming-call-kit 中的原生能力 Capgo 原生插件目录 Capgo 原生插件目录中的产品工作流 Capacitor 由 Capgo 提供的原生插件 Capacitor 由 Capgo 提供的原生插件的实现细节 添加或更新原生插件 添加或更新原生插件的实现细节 Ionic 企业原生插件替代方案 Ionic 企业原生插件替代方案中的产品工作流