Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android在onPause和onResume之间获得时间_Android_Onresume_Onpause - Fatal编程技术网

Android在onPause和onResume之间获得时间

Android在onPause和onResume之间获得时间,android,onresume,onpause,Android,Onresume,Onpause,我希望能够计算onPause和onResume之间的时间,以便我的应用程序知道当用户返回应用程序时动画应该在哪里。以下是我正在尝试的: long onPauseTime; long onResumeTime; public void onPause() { super.onPause(); onPauseTime = System.currentTimeMillis(); Log.d(TAG, "onPause: " + onPauseTime); } public

我希望能够计算onPause和onResume之间的时间,以便我的应用程序知道当用户返回应用程序时动画应该在哪里。以下是我正在尝试的:

long onPauseTime;
long onResumeTime;

public void onPause() {
    super.onPause();
    onPauseTime = System.currentTimeMillis();
    Log.d(TAG, "onPause: " + onPauseTime);
}

public void onResume() {
    super.onResume();
    onResumeTime = System.currentTimeMillis();
    Log.d(TAG, "onResume: " + onResumeTime);
    Log.d(TAG, "Time Gone: " + (onResumeTime-onPauseTime));
}

但是onResume方法中的onPauseTime始终为0。我做错了什么?

试试这样的方法,这样你就可以节省时间,同时还可以知道如果你的活动被破坏了会持续多久

public class MyActivity extends Activity{

            //Class used to store data
            private SharedPreferences preferences;

            public void onResume(){
                super.onResume();
                long end = System.currentTimeMillis();

                preferences = PreferenceManager.getDefaultSharedPreferences(this);
                long start = preferences.getLong("time",0);

                long elapsed = end - start;

            }

            public void onPause(){
                super.onPause();
                SharedPreferences.Editor ed = preferences.edit();
                ed.putLong("time", System.currentTimeMillis());
                ed.commit();
            }
        }

离开活动时调用onPause尝试将onPauseTime保存在SharedReferencesRight中。如果在用户离开活动时调用onPause,在他们回来时调用onResume,我想知道这两次的区别。使它们静态工作