WAY1:如何避免ActivityRecord错误的Activity暂停超时?
@Override
protected void onPause() {
super.onPause();
// do something urgent
doSomething();
}
WAY2:
@Override
protected void onPause() {
// do something urgent
doSomething();
super.onPause();
}
所不同的是的doSomething()
和super.onPause()
呼叫序列。当我使用WAY1时,如果doSomething()
的成本太高,我会得到错误:W/ActivityManager(4347): Activity pause timeout for ActivityRecord
。
如果我使用WAY2,我会避免pause timeout
错误吗?
我检查了AOSP,但是我很难理解Activity的调用过程。
根据http://developer.android.com/intl/es/training/basics/activity-lifecycle/pausing.html您必须始终调用超类方法 – antonio
@antonio是的。我看到了。你知道原因吗? –
http://stackoverflow.com/a/9626268/1320616和http://stackoverflow.com/a/18874519/1320616将正确解释你需要知道的一切 –