【问题标题】:How much time user spend in certain activity of fragment?用户在片段的某个活动上花费了多少时间?
【发布时间】:2017-06-27 06:49:51
【问题描述】:

我想获取用户在我的应用程序中的某些活动或片段中花费的次数,并将其保存到我的数据库中。有什么办法吗?

有人说使用 Firebase Google Analytic,但我想在我的应用程序中使用。

【问题讨论】:

  • 您可以使用这里提到的解决方案使用 Application.ActivityLifecycleCallbacks stackoverflow.com/questions/9778990/…
  • 创建一个自定义定时器,在你的 onCreate 方法中初始化它并在 onStop 方法中停止它。当您停止它时,计算流逝时间并请求将其保存在您的数据库或服务器中,无论您喜欢在后台的哪个位置。我们将 appdynamics 用于相同的目的,我猜他们会做类似的事情。
  • @morteza moradi 看到我的回答。

标签: java android


【解决方案1】:

试试这个简单的步骤,无需任何计时器或服务。我为我的许多应用程序做这些事情。希望对您有所帮助。

1.) 声明两个对象开始,结束于您要向数据库添加时间的每个活动。例如

long startTime;
long endTime;

2.) 现在在 Activity onCreate() 内部做这样的事情。

startTime = System.currentTimeMillis();

3.) 现在,当您关闭活动并移动到 onDestroty() 内的另一个活动时,请执行以下操作。

@Override
protected void onDestroy()
{
   endTime = System.currentTimeMillis();
   long timeSpend = endTime - startTime;
   // Insert timeSpend in databse.
   // you can also convert the timeSpend to hours, minutes, seconds.
   super.onDestroy();
}

如果您不想在 onDestroy() 中编写代码,也可以在 onStop() 中使用上述代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 2019-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多