如何在android上获取连接/网络使用时间
我需要获得手机在2G网络、3G网络或数据断开连接上花费的时间。 我搜索了android参考资料,但找不到任何解决方案。 有什么方法可以得到这些数据吗如何在android上获取连接/网络使用时间,android,Android,我需要获得手机在2G网络、3G网络或数据断开连接上花费的时间。 我搜索了android参考资料,但找不到任何解决方案。 有什么方法可以得到这些数据吗 我想使用一个监听器来检测网络/连接类型的变化,并使用一个计数器来计算2G时间、3G时间和断开连接的时间。但是我想知道是否有更好/更简单的方法来解决这个问题。像这样的连接检查怎么样 public boolean isOnline() { // check if an internet connection is present
我想使用一个监听器来检测网络/连接类型的变化,并使用一个计数器来计算2G时间、3G时间和断开连接的时间。但是我想知道是否有更好/更简单的方法来解决这个问题。像这样的连接检查怎么样
public boolean isOnline() {
// check if an internet connection is present
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (!(netInfo != null && cm.getActiveNetworkInfo().isAvailable() && cm
.getActiveNetworkInfo().isConnected())) {
return false;
}
return true;
}
然后计算时间
不要忘记清单中的
。没有更好的方法,清单中只包含数据统计信息。你必须注册一个广播接收器。
您还必须监听电话启动(接收启动完成)。
关闭更为棘手。我会为TIMER_TICK添加一个侦听器,这将为您提供一分钟精确的正常运行时间,这对于这个应用程序来说已经足够了。您可以在启动时进行处理,从上一个网络状态计数器中减去停机时间