如何说明为什么我的活动在启动时暂停?

时间:2014-04-25 00:23:02

标签: android

我有点奇怪的问题。我注意到在我的主手机上运行4.4.2的三星Galaxy S4,安装了一些软件或设置会导致每个应用程序在启动时在加载时暂时进入暂停状态,因此onResume会被调用两次。但这不会发生在我妻子的S4运行4.3上。我试图缩小导致这种情况的原因。

几乎所有我检查过的应用程序都会出现这种情况,包括由IntelliJ 13生成的Hello World应用程序,但不是在Android模拟器上,而不是在我妻子的S4上。会发生什么:

(launch the app)
onResume()
onPause()
onResume()
(app is now active)

好像某个软件正在短暂地进行前景控制。我真的很想知道是什么。

任何人都知道可能导致这种情况的原因,或者我如何确定启动时调用onPause的原因?如果它有其他应用程序拦截,我想知道至少它的名字。谢谢!

1 个答案:

答案 0 :(得分:0)

好的,罪魁祸首是ES File Explorer。卸载此应用程序使此行为停止。我不知道为什么会这样做,但我没有多少使用该应用程序而且看起来有些可疑,所以我只是删除了应用程序。

如果这有助于其他人:在onResume / onPause中记录可见活动确实帮我缩小了一点。

private void logVisibleProcesses() {
    ActivityManager activityManager = (ActivityManager) getSystemService("activity");
    List<ActivityManager.RunningAppProcessInfo> processList = activityManager.getRunningAppProcesses();
    if (processList != null) {
        for (ActivityManager.RunningAppProcessInfo appProcessInfo : processList) {
            if (appProcessInfo.importance == appProcessInfo.IMPORTANCE_VISIBLE) {
                Log.e(TAG, "visible process: " + appProcessInfo.processName);
            }
        }
    }
}