跳过内容

@capgo/capacitor-后台任务

Expo風格的Capacitor背景任務,基於Android WorkManager和iOS BGTaskScheduler。

使用 @capgo/capacitor-background-task 当您的Capacitor应用需要周期性后台抓取工作,例如同步、缓存刷新、收件箱轮询、分析数据刷新或轻量级维护任务时。

该插件遵循Expo BackgroundTask的实用功能集,包括带有名称的任务、持久注册、状态检查、注销、开发触发器和iOS过期事件。

  • defineTask - 为带有名称的任务注册JavaScript回调。
  • registerTaskAsync - 持久和计划周期性任务。
  • unregisterTaskAsync - 取消一个任务的未来运行。
  • isTaskRegisteredAsync - 检查是否已注册任务。
  • getRegisteredTasksAsync - 列出当前已注册的任务名称。
  • getPendingTaskRunsAsync - 检查 JavaScript 未准备就绪前记录的本机任务事件。
  • getStatusAsync - 检查本机后台任务的可用性。
  • triggerTaskWorkerForTestingAsync - 在开发期间立即运行已注册的任务。
  • addExpirationListener - 处理 iOS 过期回调。
  • define, schedule, cancel, statusAsync, 和 finish - 适用于 react-native-background-task.

后台任务不是精确的定时器。 Android 和 iOS 根据电池、网络、应用程序使用情况和系统政策决定何时运行预定工作。

平台本机调度器重要行为
AndroidWorkManager每15分钟最小间隔的周期性工作
iOSBGTaskSchedulerminimumInterval 是最早开始的日期,而不是保证的节奏
Web仅用于测试的fallback没有可用的真正的后台调度器
方法简介
defineTask定义一个命名任务的JavaScript回调函数。
registerTaskAsync注册一个命名的周期性后台任务。
unregisterTaskAsync取消未来的任务运行。
isTaskRegisteredAsync返回是否已注册任务。
getRegisteredTasksAsync列出已注册的任务名称。
getPendingTaskRunsAsync列出等待完成的本机任务事件。
getStatusAsync返回本机后台调度是否可用。
triggerTaskWorkerForTestingAsync为开发和QA触发已注册的任务。
addExpirationListener监听iOS过期事件。

本参考文档是同步自 src/definitions.ts 在 capacitor-background-task.

继续阅读 @capgo/capacitor-background-task

标题:继续阅读 @capgo/capacitor-background-task

如果您正在使用 @capgo/capacitor-后台任务 来规划原生插件工作,连接它到 使用 @capgo/capacitor-background-task 为使用@capgo/capacitor-background-task的原生能力 使用 @Capgo/__CAPGO_KEEP_1__-background-task Capgo 插件目录中用于产品工作流程的 Capacitor Capgo 为 Capacitor Capgo 添加或更新插件 为添加或更新插件,以及 Ionic 企业插件替代品 为 Ionic 企业插件替代品的产品工作流程