测量Android中的应用加载时间

时间:2014-09-25 14:00:47

标签: android

我的应用程序登录页面有3个异步HTTP调用,一旦应用程序打开就会调用它们。我想知道的是渲染应用程序所需的时间(可以通过在活动生命周期事件上设置计时器来完成)但是所有 HTTP调用已完成。

因此,如果call1需要100ms,call2需要200ms而call3需要150ms,那么页面加载时间将为200ms(加上渲染所需的额外时间)

在网络世界中,我可以使用javascript promises来设置在所有异步调用完成时调用的代码。我可以在Android中做类似的事情吗?

2 个答案:

答案 0 :(得分:1)

您可以在活动中添加静态字段并使其不稳定。

public static volatile int TOTAL_TIME = 0;

然后从计算每个异步任务的时间开始。您可以通过获取doInBackground()开头的当前时间并将其与返回值之前的时间进行比较来实现。然后将差异添加到该静态字段。

MyActivity.TOTAL_TIME+=difference;

答案 1 :(得分:0)

你也可以在@Pedro Oliveira Solution旁边 您可以在第一个请求中以doInBackground()方法保存开始时间,而不是计算每个onStart()方法,并将时间保存在onSuccess()onFailure(),{{1在最后一个请求中然后减去两次以获得两者之间的增量时间。