跳过内容

iOS设置

GitHub

iOS 后台处理使用 BGTaskScheduler在物理设备上使用后台处理时,应用程序必须在调度之前声明背景模式和允许的任务标识符。

添加这些密钥 ios/App/App/Info.plist:

<key>UIBackgroundModes</key>
<array>
<string>processing</string>
</array>
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
<string>app.capgo.backgroundtask.processing</string>
</array>
终端窗口
npx cap sync ios
  • minimumInterval 映射到 earliestBeginDate.
  • iOS 根据电池、网络、使用模式和系统策略决定实际的运行时间。
  • 背景任务在模拟器上不靠谱地执行。测试在物理设备上。
  • 插件在每次任务启动后重新排程下一次背景处理请求。

过期时间

过期时间

使用 addExpirationListener 当 iOS 早于任务结束时,需要清理工作。

const handle = await BackgroundTask.addExpirationListener((event) => {
console.warn('Task expired', event.taskName);
});
await handle.remove();

继续从 iOS 设置

如果您正在使用

iOS 设置 来规划原生插件工作,连接它与 使用 @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-background-task 为原生能力在使用 @capgo/capacitor-background-task for the native capability in Using @capgo/capacitor-background-task, Capgo 插件目录 在 Capgo 插件目录中了解产品工作流程 Capacitor 由 Capgo 提供的插件 了解 Capacitor 由 Capgo 提供的插件的实现细节 添加或更新插件 了解添加或更新插件的实现细节 Ionic Enterprise 插件替代方案 了解 Ionic Enterprise 插件替代方案的产品工作流程