0

我目前正在向广播接收器发射一个意图,该接收器反过来启动一个活动。

然后从同一个服务中,另一个 Intent 被触发到 Activity 中的广播接收器。

问题是 Activity 没有获得适用于它的 Intent,因为它在它还活着并且广播接收器注册之前就被触发了。

我想知道在发送 Intent 之前是否有确保 Activity 处于活动状态?

或任何其他解决方案?

4

1 回答 1

1

如果活动还没有活动,为什么不开始活动呢?

如果新 Activity 未运行,则启动新 Activity 的一般机制(或者如果已在后台运行,则将 Activity 堆栈置于最前面)是在 startActivity() 调用中使用 NEW_TASK_LAUNCH 标志。

或者只是让活动有机会在触发 Intent 之前开始。

或者,您可以尝试使用sendOrderedBroadcast从广播中检索数据,然后重试。

public abstract void sendOrderedBroadcast (Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)
于 2010-02-24T17:44:48.627 回答