Wake Lock は最初のアクティビティでは正常に動作しますが、ユーザーがアクティビティを変更するボタンを押すと、アプリがクラッシュします...なぜですか? 私は wl. release(); を使用しました。また、マニフェストでパーミッション WakeLock を使用しました。また、マニフェストにアクティビティ 2 を登録しました。
private PowerManager.WakeLock wl;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_1);
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "Application1");
wl.acquire();
btnMy = (Button)findViewById(R.id.buttonmy);
btnMy.setOnClickListener(btnListener);
}
private OnClickListener btnListener = new OnClickListener() {
public void onClick(View v) {
wl.release();
startActivity(new Intent(v.getContext(), Activity2.class));
//Intent myIntent = new Intent(v.getContext(), Activity2.class);
// startActivityForResult(myIntent, 0);
}
};
protected void onPause() {
super.onPause();
wl.release();
}
protected void onStop() {
super.onStop();
wl.release();
finish();
}
protected void onDestroy() {
super.onDestroy();
wl.release();
finish();
}