【发布时间】:2020-12-16 12:03:16
【问题描述】:
我正在创建一个具有广播接收器的应用,该接收器通过清单注册。
它接收来自其他应用的意图并显示通知。
该通知有一个pendingIntent,它在点击时启动MainActivity,并使用意图将一些值(如发送者应用程序的packageName)传递给它。
现在,如果用户没有使用通知打开MainActivity,我正在使用NotificationManager.getActiveNotifications() 方法获取活动通知,但我无法从中获取意图。
到目前为止我尝试过的事情:
- 我不想使用动态广播接收器,因为我想在后台接收 Intent。
- 我尝试在
sharedPreference中创建通知时存储数据,如果有任何活动通知,我稍后可以进入MainActivity。不确定这是否是最好的方法。 - 使用服务的
onBind方法获取MainActivity中的数据,但是后台服务无法从广播接收器启动,所以只能在MainActivity运行时起作用。
有没有办法通知MainActivity来自广播接收器的数据,即使MainActivity没有运行,并在MainActivity启动时立即获取数据。
任何帮助将不胜感激。
【问题讨论】:
标签: android android-intent broadcastreceiver android-service