feat(background-task): 实现原生与JS层的任务同步机制
解决后台任务在JS监听器未就绪时丢失的问题。新增任务缓存队列,当检测到无JS监听器时将任务暂存,并启动20秒超时计时器等待JS初始化完成。JS层通过markJSReady接口通知原生层准备就绪,触发缓存任务的立即执行。超时后自动切换到默认处理逻辑,确保任务不丢失。
This commit is contained in:
@@ -363,6 +363,15 @@ export class BackgroundTaskManagerV2 {
|
||||
this.handleTaskExpiration();
|
||||
});
|
||||
|
||||
if (typeof NativeBackgroundModule.markJSReady === 'function') {
|
||||
try {
|
||||
await NativeBackgroundModule.markJSReady();
|
||||
logger.info('[BackgroundTaskManagerV2] 已通知原生层 JS 监听器就绪');
|
||||
} catch (readyError) {
|
||||
logger.warn('[BackgroundTaskManagerV2] 通知原生层 JS 准备状态失败', readyError);
|
||||
}
|
||||
}
|
||||
|
||||
logger.info('[BackgroundTaskManagerV2] 事件监听器注册完成');
|
||||
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user