如何在不重新启动的情况下将广播接收器的信息发送回我的主要活动

时间:2013-03-26 22:14:34

标签: java android cordova android-activity

  if (messages.length > -1) {
                        int duration = Toast.LENGTH_SHORT;
                        Toast toast = Toast.makeText(context, "Message recieved: " + messages[0].getOriginatingAddress(), duration);
                        toast.show();
                        String value = "Message recieved: " + messages[0].getOriginatingAddress();

我的代码在这里得到一个短信。我想把它带回我的主要活动,但我不能使用我的意图并重新启动该活动(广播接收器是后台服务,人们将在此期间使用该应用程序。)而不是敬酒我怎样才能将该字符串传递给活动(我只有一个主要活动)。

1 个答案:

答案 0 :(得分:1)

如果您希望仅在前台通知您的活动时,只需从短信广播接收器发送新广播,并从您活动中托管的广播接收器中截取它。

另一方面,如果你想检查当活动回到前台时是否发送了广播,即使在活动处于后台时收到短信,你仍然可以使用广播接收器,但你需要添加sticky intent,之后可以收到。

Plus:使用local broadcast receiver以节省资源。