所以我有这个问题,我有什么东西要传回活动,但问题是我不知道怎么样,我读了一些线程,但它有点混乱和混乱,你的任何人都可以摆脱一些对此有所了解。我只是想从我的接收器(BroadcastReciever)传回一些东西。我已经阅读了一个线程,你可以开始一个活动,但问题是,如果允许将一个额外的意图传递给一个活动,会有一点混乱吗?感谢您提供的任何输入。
答案 0 :(得分:2)
可能重复的回答https://stackoverflow.com/a/6857648/760489
当您从广播接收器
启动活动时,可以通过设置意图中的标记来执行此操作public void onReceive(Context context, Intent intent){
Intent i = new Intent(context, DestinationActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
i.putExtra("PATH", path);
context.startActivity(i);
}
FLAG_ACTIVITY_SINGLE_TOP可确保应用程序在已打开时不会重新打开。这意味着首先打开YourActivity的“旧”意图将被重用,并且不会包含额外的值。您必须在YourActivity中另一个名为onNewIntent()的方法中捕获它们。
查看顶部链接的完整答案
答案 1 :(得分:1)
试试这个:
public void onReceive(Context context, Intent intent)
{
Intent i = new Intent(context, DestinationActivity.class);
i.putExtra("PATH", path);
context.startActivity(i);
}