我已在清单文件中注册了一个广播接收器以进行连接更改。每当网络发生变化时,它都会正常工作,onReceive()
被调用。但是当我启动我的应用程序并且有互联网时;因为网络没有变化;接收器不会被调用。我希望这个接收器能够首次启动应用程序。
我的想法是再向BroadcastReceievr
添加一个动作,这是个好主意吗?每当调用连接更改操作时,我想取消注册启动器操作意图..
我该怎么办?
答案 0 :(得分:2)
您可以添加以下多个过滤器:
IntentFilter inf = new IntentFilter();
inf.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
inf.addAction("app_launch");
registerReceiver(receiver, inf);
当您在onCreate中启动应用时,您可以发送广播
Intent intent = new Intent();
intent.setAction("app_launch");
sendBroadcast(intent);