GCM 网络管理器已弃用。 Firebase Jobdispatcher 没有在后台持续工作?

Posted

技术标签:

【中文标题】GCM 网络管理器已弃用。 Firebase Jobdispatcher 没有在后台持续工作?【英文标题】:GCM Network Manager is deprecated. Firebase Jobdispatcher is not working persistently in background? 【发布时间】:2018-10-04 11:07:45 【问题描述】:

我听说 GCM 在 2019 年 4 月 11 日被弃用。我在我的项目中实现了 GCM 网络管理器,我在后台持续运行服务,尽管互联网连接打开或关闭。

Firebase 作业调度程序不像 GCM 网络管理器那样运行?

这是以下代码:

Job myJob = mDispatcher.newJobBuilder()
            .setService(MyJobService.class)
            .setTag(JOB_TAG)
            .setRecurring(true)
            .setTrigger(Trigger.executionWindow(5, 30))
            .setLifetime(Lifetime.FOREVER)
            .setReplaceCurrent(false)
            .setConstraints(Constraint.ON_ANY_NETWORK)
            .setRetryStrategy(RetryStrategy.DEFAULT_LINEAR)
            .build();
    mDispatcher.mustSchedule(myJob);
    Toast.makeText(this, R.string.job_scheduled, Toast.LENGTH_LONG).show();

【问题讨论】:

firebase 作业主要用于调度check this 我已经实现了 firebase 作业调度程序,但仍然不能像 GCM 网络管理器那样完美地工作? 而不是这个问题(你应该删除),你为什么不具体问什么“工作不完美”以及你尝试过哪些没有解决问题的方法?这不是 Code-Review 网站,也不是进行不确定性推测的地方。 :) 嗨@MartinMarconcini,我已经编辑了我的问题。请检查并告诉我这种可能性。如何克服这个问题。 【参考方案1】:

Firebase Job Dispatcher 的 GitHub 文档明确指出:

该库使用Google Play services(以前的GCM Network Manager 组件)内部的调度引擎来提供向后兼容(回到Gingerbread)JobScheduler 类似的API。

【讨论】:

以上是关于GCM 网络管理器已弃用。 Firebase Jobdispatcher 没有在后台持续工作?的主要内容,如果未能解决你的问题,请参考以下文章

CCActionManager sharedManager 已弃用

管理 Firebase 安装实施的截止日期是啥时候?移动应用中已弃用的 Firebase 安装 ID 有啥影响?

更新 Swift 中已弃用的 Firebase 函数

Firebase 远程配置 isDeveloperModeEnabled() 已弃用

Firebase 发布请求 Swift/SwiftUI 已弃用

Firebase InstanceID.instanceID().token() 方法已弃用