最近在Android上做GPS的东西,获取经纬度、计算距离、方位角,感觉在搞GIS样。当然,玩笑了,玩玩而已,稍微总结一下。

经度指示南北方向,纵向。

纬度指示东西方向,横向.

获取经纬度

使用GPS权限:

<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>

Android提供LocationManager和Location,可以方便的获得经纬度、海拔等位置。使用LocationManager来获得位置管理类,从而可以获得历史GPS信息以及位置变化的监听注册;使用Location来获得具体的位置信息。代码如下:

locationm= (LocationManager) getSystemService(LOCATION_SERVICE);

Criteria criteria =newCriteria();

criteria.setAccuracy(Criteria.ACCURACY_FINE);

criteria.setAltitudeRequired(false);

criteria.setBearingRequired(false);

criteria.setCostAllowed(true);

criteria.setPowerRequirement(Criteria.POWER_LOW);

String provider =locationm.getBestProvider(criteria,true);

Location location =locationm.getLastKnownLocation(provider);

//获得上次的记录

gps_loc(location);

LocationListener GPS_listener =newLocationListener() {

//监听位置变化,实时获取位置信息

@Override

publicvoidonStatusChanged(String provider,intstatus,

Bundle extras) {

//TODOAuto-generated method stub

}

@Override

publicvoidonProviderEnabled(String provider) {

//TODOAuto-generated method stub

}

@Override

publicvoidonProviderDisabled(String provider) {

//TODOAuto-generated method stub

}

@Override

publicvoidonLocationChanged(Location location) {

//TODOAuto-generated method stub

//位置发生改变时

gps_loc(location);

}

};

locationm.requestLocationUpdates(provider, 1000, 0, GPS_listener);

}

//获得自己位置

privatevoidgps_loc(Location location) {

if(location !=null) {

self_weidu= location.getLatitude();

self_jindu= location.getLongitude();

}else{

self_weidu= 0;

self_jindu= 0;

}

}


更多相关文章

  1. Android(安卓)Monkey压力测试使用
  2. 检查Android本地代码的内存泄漏(Detecting memory leak in Androi
  3. androidのMms模块编辑短彩信
  4. 个人帐号密码信息管理(PAPIM)软件构想
  5. Android导出文件位置讨论
  6. Android系统调试(01)日志分析基础流程
  7. android--多点触控的实现
  8. Android中对多媒体操作阶段总结
  9. Android中BroadCastReceiver使用(整理)

随机推荐

  1. FileProvider无法获取外置SD卡问题解决方
  2. Android5.1系统通过包名给应用开放系统权
  3. cm-14.1 Android系统启动过程分析(四)-Laun
  4. Android手机的那点事
  5. 为Android系统定制重启功能
  6. Android(安卓)Dev Guide -> User Interfa
  7. Android之ButterKnife用法详解
  8. 20172323 2017-2018-2《程序设计与数据结
  9. Android计时器TimerTask,Timer,Handler
  10. Android中的版本适配