WorkManager 不适用于百度推送 SDK

Posted

技术标签:

【中文标题】WorkManager 不适用于百度推送 SDK【英文标题】:WorkManager not working for Baidu Push SDK 【发布时间】:2020-10-08 10:50:11 【问题描述】:

我在我的项目中使用 Baidu Push SDK。我创建了一个广播接收器来接收扩展 PushMessageReceiver 的百度通知。每当收到通知时,我都会执行一次性工作经理请求,将事件上传到我们的服务器。由于广播接收器在另一个进程中运行,我得到以下异常

java.lang.IllegalStateException: WorkManager is not initialized properly.  You have explicitly disabled WorkManagerInitializer in your manifest, have not manually called WorkManager#initialize at this point, and your Application does not implement Configuration.Provider.

有人可以帮我解决成功执行我的 WorkManager 请求的方法吗?

提前致谢。

【问题讨论】:

【参考方案1】:

WorkManager 失败,因为百度推送在不同的进程上工作,并且 WorkManager 没有在百度的进程中初始化。您需要做两件事,首先,通过将 WorkManager 包装在检查应用程序是否在主进程中的条件中来初始化它。它将避免您得到的 WorkManager 错误。其次,您需要创建一个自定义的 BroadcastReceiver,当您在百度的 BroadcastReceiver 中收到通知时,您将向其发送广播。

希望这能解决您的问题。

【讨论】:

以上是关于WorkManager 不适用于百度推送 SDK的主要内容,如果未能解决你的问题,请参考以下文章

有哪位大虾用百度云推送的 Python sdk 做过 iOS 推送吗

百度云推送服务端SDK怎么用

iOS开发三步搞定百度推送

Firebase 推送通知不适用于试飞

IOS VoiP 推送不适用于 APNS 推送

推送通知不适用于生产