Parse.com 推送通知和有序广播
Parse.com Push notifications and ordered broadcast
我正在实施 Parse 推送通知。我有 2 个接收器。如果一个特定的 activity 是 运行,第一个将始终显示通知,第二个将接管通知。一个在清单中注册(优先级 1),另一个是 registered/unregistered 动态(优先级 2)。我的问题是我无法通过调用
取消动态接收器的广播
abortBroadcast()
它抛出一个异常
BroadcastReceiver trying to return result during a non-ordered broadcast
那么,有什么方法可以让广播按顺序进行吗?
我真的很想在 activity 处于活动状态时处理它中的数据。
好的,找了2个小时,终于解决了。这就是我所做的,
首先,我创建了一个基础 BroadcastReceiver
,它接收来自 Parse 的推送通知。然后它从收到的意图中删除所有操作并添加自定义操作,例如 com.myclass.PUSH
然后我用了
context.sendOrderedBroadcast(intent, null);
使用我的自定义操作发送新的有序广播。
现在我将其他两个接收者(在清单中定义的那个和我在 activity 中定义的动态接收者)的操作设置为 com.myclass.PUSH
现在广播已订购,我可以使用 abortBroadcast()
取消它
我正在实施 Parse 推送通知。我有 2 个接收器。如果一个特定的 activity 是 运行,第一个将始终显示通知,第二个将接管通知。一个在清单中注册(优先级 1),另一个是 registered/unregistered 动态(优先级 2)。我的问题是我无法通过调用
取消动态接收器的广播abortBroadcast()
它抛出一个异常
BroadcastReceiver trying to return result during a non-ordered broadcast
那么,有什么方法可以让广播按顺序进行吗? 我真的很想在 activity 处于活动状态时处理它中的数据。
好的,找了2个小时,终于解决了。这就是我所做的,
首先,我创建了一个基础 BroadcastReceiver
,它接收来自 Parse 的推送通知。然后它从收到的意图中删除所有操作并添加自定义操作,例如 com.myclass.PUSH
然后我用了
context.sendOrderedBroadcast(intent, null);
使用我的自定义操作发送新的有序广播。
现在我将其他两个接收者(在清单中定义的那个和我在 activity 中定义的动态接收者)的操作设置为 com.myclass.PUSH
现在广播已订购,我可以使用 abortBroadcast()