Android手机GPS定位功能的简单应用讲解
程序员文章站
2022-07-02 19:55:41
android手机gps定位功能的简单应用讲解,android手机的gps定位功能在android开发中很常见,是最基本的应用功能,大多数智能手机都带有gps芯片,硬件底层和软件驱...
android手机gps定位功能的简单应用讲解,android手机的gps定位功能在android开发中很常见,是最基本的应用功能,大多数智能手机都带有gps芯片,硬件底层和软件驱动就省了,我们只管调y用gps相应的函数接口就能获取经纬度。明确一下基本功能:实现每隔2秒获取一次gps经纬度,用累加的方式计算行程,并保存到sqlite数据中。
首先,获取经纬度的方法为lm.requestlocationupdates(locationmanager.gps_provider,2000,1,locationlistener);其中locationmanager.gps_provider为本位所采用的位置提供其,locationlistener为位置监听方法。locationlistener方法实现具体细节如下:
private final locationlistener locationlistener = new locationlistener(){ @override public void onlocationchanged(location location) { // todo auto-generated method stub updatewithnewlocation(location); } @override public void onproviderdisabled(string provider) { // todo auto-generated method stub updatewithnewlocation(null); } @override public void onproviderenabled(string provider) { // todo auto-generated method stub } @override public void onstatuschanged(string provider, int status, bundle extras) { // todo auto-generated method stub } }; private void updatewithnewlocation(location location) { if (location != null) { string time = string.valueof(utils.formatdate(location.gettime())); double lat = location.getlatitude(); double lng = location.getlongitude(); string battery = constants.currlevel+"%"; if(n>2){ count+=mymethod.getdistancefromxtoy(lat, lng, relat, relon); relon=lng; relat=lat; } else { relon =lng; relat =lat; n++; } db.insertgps(time, battery, lat, lng, count); intent intent=new intent(); intent.putextra("time", time); intent.putextra("count", count); intent.setaction("android.intent.action.test"); sendbroadcast(intent); }else{ } }
上一篇: 广州南沙湾好玩吗(附游玩攻略)