我有一个很难确定的问题。
当我从市场安装应用程序时,有时会看到以下行为:
- 按预期离开应用调用 onStop
- 返回应用程序为主 Activity 调用 onCreate,而不仅仅是 onRestart/onResume
无论如何,每次用户离开/返回应用程序时,onCreate 都会被调用。显然,这会在状态等方面引起大问题。
有时重新启动手机可以解决此问题,有时则不能。从 .adb 安装可以防止这种行为。
在图标触摸时从行为应用程序记录(已经运行时):
2-10 18:56:33.855: INFO/ActivityManager(1482): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.sidekickApp/.Main } from pid 1604
02-10 18:56:33.855: VERBOSE/HtcAppUsageStats(1482): (launch app, package): (Sidekick App, com.sidekickApp)
02-10 18:56:33.865: DEBUG/PhoneWindow(1604): couldn't save which view has focus because the focused view com.android.internal.policy.impl.PhoneWindow$DecorView@40547888 has no id.
02-10 18:56:33.865: DEBUG/Background traffic light(1604): traffic light: GREEN, mBackgroundTrafficLight = false
02-10 18:56:33.895: VERBOSE/Main(2648): Debug: onRestart()
02-10 18:56:33.895: DEBUG/Main(2648): Debug: onResume()
从困惑的应用程序登录:
02-10 18:39:35.813: INFO/ActivityManager(1477): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.sidekickApp/.Main bnds=[360,586][477,704] } from pid 1583
02-10 18:39:35.843: VERBOSE/HtcAppUsageStats(1477): (launch app, package): (Sidekick App, com.sidekickApp)
02-10 18:39:35.873: DEBUG/Background traffic light(1583): traffic light: GREEN, mBackgroundTrafficLight = true
02-10 18:39:35.903: VERBOSE/Main(7364): Debug: onCreate()
我在这里很绝望。有什么想法吗?
最佳答案
如果 onStop() 被调用,则 onResume 没有任何内容。它仅在 onPause 之后调用。仅当您为其编写代码时才会调用 onRestart。请参阅http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle
关于Android - 每次启动时都会调用 onCreate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9238353/