我试图在屏幕锁定时关闭GPS位置更新。读过这个问题的答案Android - how to receive broadcast intents ACTION_SCREEN_ON/OFF?BroadcastReceiver未触发屏幕锁定
我已经写了一些代码来实现BroadcastReceiver,但在屏幕熄灭时它不工作。
我注册一个BroadcastReceiver在我的代码以
@Override
public void onResume() {
super.onResume();
IntentFilter iFilter = new IntentFilter();
iFilter.addAction("android.intent.action.ACTION_SCREEN_ON");
iFilter.addAction("android.intent.action.ACTION_SCREEN_OFF");
registerReceiver(screenStatReceiver, iFilter);
和接收器本身只是现在存根:
public BroadcastReceiver screenStatReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.d("BCAST_TAG", "Got broadcast");
String action = intent.getAction();
}
};
,并在清单中,我有:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
任何想法为什么它没有被触发时,我在我的手机上调试?
您正在OnResume方法中注册接收器。为什么不在onCreate()中注册它,这样你就可以持久地“收听”了? –
即时注册onCreate但我不注销它 – Erum
其投掷错误我想检测屏幕上的变化我将如何 – Erum