跳转到正文

Android 行为

GitHub

Android 调度由 WorkManager 提供支持。对于常规的周期性后台 fetch 任务,无需在应用清单中添加额外条目。

await BackgroundTask.registerTaskAsync('sync-offline-data', {
minimumInterval: 30,
requiresNetwork: true,
});
  • Android 强制要求周期性任务的最小间隔为 15 分钟。
  • requiresNetwork: true 对应 WorkManager 的已连接网络约束。
  • 每个任务名称都作为唯一的周期性任务进行调度,因此注册相同的任务名称会更新现有的调度。
  • 任务执行记录在原生层记录,然后传递给 JavaScript,因此可以在 WebView 就绪时处理待处理的事件。

在开发期间,使用测试触发器立即执行已注册的回调:

await BackgroundTask.triggerTaskWorkerForTestingAsync();

WorkManager 专为可延迟执行的任务设计。它不保证精确的触发时间,因此不应用于闹钟、倒计时或用户可见的截止时间。

如果你正在使用 Android 行为 要规划原生插件工作,请将其与 使用 @capgo/capacitor-background-task 用于“使用 @capgo/capacitor-background-task”中的原生能力, Capgo 插件目录 查看 Capgo 插件目录中的产品工作流, Capgo 提供的 Capacitor 插件 查看由 Capgo 提供的 Capacitor 插件中的实现细节, 添加或更新插件 关于“添加或更新插件”中的实现细节,以及 Ionic Enterprise 插件替代方案 关于“Ionic Enterprise 插件替代方案”中的产品工作流。