我有一种情况,我只想注册一个BroadcastReceiver
在某些平台上更改的时间。出于性能原因,我想context.registerReceiver
仅在需要的平台上通过该方法动态注册接收器。我可以在应用程序首次运行时检测平台并决定是否要收听此事件。
在测试这种方法时,我发现通过context.registerReceiver
应用程序注册时,如果进程未运行,则不会被唤醒。
这是预期的吗?是否有解决方法?
IntentFilter filter = new IntentFilter(Intent.ACTION_TIME_CHANGED);
this.getApplicationContext().registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.e("MYTAG", "Received Broadcast from dyn one");
}
}, filter);