跳过内容

Android

GitHub

在Android上,插件会发布一个高优先级的 incoming-call 通知,并在平台和用户设置允许时可以弹出一个全屏活动。

插件清单已经包含:

<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />

安装后, cap sync 足以将该配置合并到主应用中。

运行时权限

Runtime 权限

在用户注册或您依赖来电展示之前,调用这些方法:

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();
await IncomingCallKit.requestFullScreenIntentPermission();
  • requestPermissions() 在 Android 13 及后续版本中请求通知权限。
  • requestFullScreenIntentPermission() 在需要时打开 Android 14 及后续版本的全屏意图设置页面。

基本示例

基本示例
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
appName: 'Capgo Phone',
timeoutMs: 45_000,
android: {
channelId: 'calls',
channelName: 'Incoming Calls',
showFullScreen: true,
isHighPriority: true,
accentColor: '#0F766E',
},
});

Android 特定选项

通知渠道标识符
  • channelId用户可见的渠道名称
  • channelName复制到剪贴板
  • showFullScreen: 请求全屏活动
  • isHighPriority: 保持通知持续打扰
  • accentColor: 适配通知背景色
  • ringtoneUri: 指向自定义 Android 铃声资源或 URI
  • 全屏展示是尽力而为。如果设备或用户设置阻止它,Android仍会显示来电通知。
  • 超时处理是尽力而为。插件跟踪和发射 timeoutMs 但是,您的后端仍应在其侧重新协调丢失的电话。 callTimedOut接受、拒绝和结束动作通过 __CAPGO_KEEP_0__ 监听器发射回给应用程序,以便应用程序可以加入或清理真实的呼叫会话。
  • Accept, decline, and end actions are emitted back through Capacitor listeners so your app can join or clean up the real call session.
推荐生产模型

使用 Android 推送或您的呼叫SDK进行运输,然后让该插件处理本机呼叫 UI 的最后一英里。将这些责任放在插件外面:

  • FCM 注册和令牌管理
  • 媒体会话生命周期
  • 后端调用状态
  • 重试和错过呼叫的商业逻辑

继续从 Android

如果您正在使用

Android 来规划本机媒体和界面行为,连接它与 使用 @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-incoming-call-kit Using @capgo/capacitor-incoming-call-kit 为使用 @capgo/capacitor-incoming-call-kit 的原生能力 使用 @capgo/capacitor-live-activities 为使用 @capgo/capacitor-live-activities 的原生能力 @capgo/capacitor-live-activities 为 @capgo/capacitor-live-activities 的实现细节 使用 @capgo/capacitor-video-player 为使用 @capgo/capacitor-video-player 的原生能力 @capgo/capacitor-video-player 为 @capgo/capacitor-video-player 的实现细节