Android编程获取网络时间实例分析

本文实例讲述了Android编程获取网络时间的方法。分享给大家供大家参考,具体如下:

在网上看到的最常见的方式有:

public static void main(String[] args) throws Exception {
  URL url=new URL("http://www.bjtime.cn");//取得资源对象
  URLConnection uc=url.openConnection();//生成连接对象
  uc.connect(); //发出连接
  long ld=uc.getDate(); //取得网站日期时间
  Date date=new Date(ld); //转换为标准时间对象
  //分别取得时间中的小时,分钟和秒,并输出
  System.out.print(date.getHours()+"时"+date.getMinutes()+"分"+date.getSeconds()+"秒");
}

原理:通过访问http://www.bjtime.cn网站来获取

这里还为大家提供另外一种方式:通过网络或者GPS的方式。

代码如下:

LocationManager locMan = (LocationManager) this.getSystemService(MainActivity.LOCATION_SERVICE);
//获取最近一次知道的时间
long networkTS = locMan.getLastKnownLocation(LocationManager.NETWORK_PROVIDER).getTime();
或者实时的获取时间:
locMan.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, this); //获取当前时间
当我们使用requestLocationUpdates时,我们需要实现LocationListener接口。
在LocationListen的回调onLocationChanged当中获取时间
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
long time = location.getTime();
Date date = new Date(time);
System.out.println(time + " NETWORK_PROVIDER " + date);
// System.out.println(STANDARD_TIME + " ");
}
@hnrainll

更多关于Android开发相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》

希望本文所述对大家Android程序设计有所帮助。

你可能感兴趣的:(Android编程获取网络时间实例分析)