5
我在ICS得到这个问题,但不是在以前的版本:广播接收器的onReceive()从来没有所谓的
从应用1,我发送广播,并试图获得在app 2活动。但是,onReceive从未被称为App 2的活动。
我无法理解该块的onReceive是否被调用,尽管我已经正确地指定了一切。
我先BroadcastSend
任何帮助,这将有助于我解决这个是非常赞赏运行BroadcastReceive。
App1的发送活动
public class BroadcastSend extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent();
i.setAction("edu.ius.rwisman.custom.intent.action.TEST");
i.putExtra("url","ww.ius.edu");
sendBroadcast(i);
}
应用2接收活动
public class BroadcastReceive extends BroadcastReceiver{
// Display an alert that we've received a message.
@Override
public void onReceive(Context context, Intent intent){
System.out.println("Inside onReceive");
String url = intent.getExtras().getString("url");
Toast.makeText(context, "BroadcastReceive:"+url, Toast.LENGTH_SHORT).show();
}
应用2的清单
<?xml version="1.0" encoding="utf-8"?>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<receiver android:name="edu.ius.rwisman.BroadcastReceive.BroadcastReceive" android:enabled="true" android:exported="true">
<intent-filter>
<action android:name="edu.ius.rwisman.custom.intent.action.TEST"/>
</intent-filter>
</receiver>
</application>
感谢这个固定的问题。但我们首先运行接收活动,然后运行发送活动。那么我们为什么面临这个问题? – user264953 2012-03-20 09:31:50
应用程序在第一次安装但尚未启动时以及用户手动停止时(处于管理应用程序中)时处于停止状态......请参阅http://developer.android.com/sdk/android- 3.1.html#launchcontrols – 5hssba 2012-03-20 09:38:21
但在注册广播时如何在清单中包含此标志 – 2014-01-29 07:35:26