作为对调用 PowerManager.goToSleep(...) 的响应,我有一个活动有时会被系统破坏。行为不一致,我无法弄清楚原因。
这是我活动的 onCreate 的相关代码,这是代码中最相关的部分:
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
requestWindowFeature(android.view.Window.FEATURE_NO_TITLE);
IntentFilter userprsentfilter = new IntentFilter(Intent.ACTION_USER_PRESENT);
mUserPresentReceiver = new UserPresentReceiver();
registerReceiver(mUserPresentReceiver,userprsentfilter);
Log.d(TAG, "created.");
}
protected void onDestroy() {
Log.d(TAG, "finished.");
}
在某个地方,在某个遥远的服务上,有时是通过活动本身,
PowerManager.goToSleep(SystemClock.uptimeMillis())
被称为导致活动被破坏。
谁能解释一下为什么系统有时会在调用 PowerManager.goToSleep 时尝试破坏活动?此外,有没有办法确定或降低活动被系统破坏的机会?我可以肯定地说,当这种情况发生时,资源并不稀缺。