Android 如何找到我的应用程序对用户可见的时间?
我需要找到我的应用程序在屏幕上的显示时间。Android 如何找到我的应用程序对用户可见的时间?,android,Android,我需要找到我的应用程序在屏幕上的显示时间。 但我不想计算应用程序在后台运行的时间。 我尝试了生命周期方法,但对我无效。 有什么有效的方法可以确定应用程序在屏幕上的显示时间吗?也许您可以尝试以下方法: 当用户启动应用程序使其可见时,在onResume()中开始测量时间,并在onPause()中停止测量时间。->您已暂停并离开屏幕或被用户自己停止 此外,您还可以在系统中加入此功能,以检查屏幕是否实际处于打开状态,如果这样更适合您,请检查下面的链接……但当您的应用程序位于后台时,已调用onPause
但我不想计算应用程序在后台运行的时间。
我尝试了生命周期方法,但对我无效。
有什么有效的方法可以确定应用程序在屏幕上的显示时间吗?也许您可以尝试以下方法: 当用户启动应用程序使其可见时,在onResume()中开始测量时间,并在onPause()中停止测量时间。->您已暂停并离开屏幕或被用户自己停止
此外,您还可以在系统中加入此功能,以检查屏幕是否实际处于打开状态,如果这样更适合您,请检查下面的链接……但当您的应用程序位于后台时,已调用onPause方法,因此这是一种非常有效的方法。
也许你可以试试这样的东西: 当用户启动应用程序使其可见时,在onResume()中开始测量时间,并在onPause()中停止测量时间。->您已暂停并离开屏幕或被用户自己停止
此外,您还可以在系统中加入此功能,以检查屏幕是否实际处于打开状态,如果这样更适合您,请检查下面的链接……但当您的应用程序位于后台时,已调用onPause方法,因此这是一种非常有效的方法。
掌握活动放在前台的时间和放在后台的时间。计算开始时间和结束时间的差值,就可以得到用户花费的时间 例如:
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
start = 0;
start = System.currentTimeMillis();
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
end = System.currentTimeMillis();
Log.w("activity time ", "" + ((end - start))*0.001); //convert to seconds
}
p.S.声明<代码>长期开始、结束代码>全局获取活动放在前台的时间和放在后台的时间。计算开始时间和结束时间的差值,就可以得到用户花费的时间 例如:
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
start = 0;
start = System.currentTimeMillis();
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
end = System.currentTimeMillis();
Log.w("activity time ", "" + ((end - start))*0.001); //convert to seconds
}
p.S.声明<代码>长期开始、结束代码>全局要简化此答案,请使用onResume和onPause。要简化此答案,请使用onResume和onPause