在Service
我想BroadcastReceiver
注册android.net.wifi.WIFI_STATE_CHANGED
public void onCreate() {
super.onCreate();
final IntentFilter filter = new IntentFilter("android.net.wifi.WIFI_STATE_CHANGED");
MyReceiver myreceiver = new MyReceiver();
// Register the receiver so that your service will listen for broadcast
registerReceiver(myreceiver , filter);
一切都很好并且可以正常工作,但是在 wifi 状态发生变化(例如断开连接)后,我希望它在 5 分钟内再次激活 1 分钟,然后再次断开连接。5分钟后再次激活1分钟。一般 5 分钟后连接只需 1 分钟,然后再次断开连接...
我尝试了这个,AlarmManager
但我遇到了如何在 5 分钟后连接 1 分钟然后断开连接的问题。
我的代码不是我尝试做的。它未连接,然后断开连接:
AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
Intent alarmIntent = new Intent(this, WifiReceiver.class);
PendingIntent pendingAlarmIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, alarmIntent, 0);
// start in 5 minutes and rest in 1 minutes interval
alarmMgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 5*60*1000, 1*60*1000, pendingAlarmIntent);
我怎样才能做到这一点?我AlarmManager的正确方法