Google的Geocoding服务功能:
    1. 查询某地址的经纬度
    2. 查询某经纬度的具体地址

    Android的Geocoding替代品
    //根据地址查询经纬度的网址及其解释
    http://maps.googleapis.com/maps/api/geocode/json?address=SFO&sensor=false ---json是表示返回的数据类型,可以改为xml。address是输入的位置。sensor标识请求是否来源于一个设备的传感器。language指定查询结果的语言
    //根据地址查询经纬度的网址及其解释,与上面不同的是这里有一个区域间范围
    http://maps.googleapis.com/maps/api/geocode/json?address=SFO&bounds=34.17,-188.6045|34.236,-118.500996&sensor=false ---bounds是区间。sensor标识请求是否来源于一个设备的传感器。language指定查询结果的语言
     //根据地址查询经纬度的网址及其解释,如与上面不同的是这里有国家代码
    http://maps.googleapis.com/maps/api/geocode/json?address=SFO&sensor=false&region=es ---region是国家代码。sensor标识请求是否来源于一个设备的传感器。language指定查询结果的语言
    //根据经纬度查询地址的网址及其解释
    http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false ---latlng=40.714224,-73.961452经纬度数据。sensor标识请求是否来源于一个设备的传感器。language指定查询结果的语言



计算两点经纬度间的举例
public double getDistance(double lat1, double lon1, double lat2, double lon2) {

  float[] results=new float[1];

  Location.distanceBetween(lat1, lon1, lat2, lon2, results);

  return results[0];

  }

在其他设备若没有类似android的Location的distanceBetween方法开采用如下代码获取:

double distance(double lat1, double lon1, double lat2, double lon2) {

  double theta = lon1 - lon2;

  double dist = Math.sin(deg2rad(lat1)) * Math.sin(deg2rad(lat2))

  + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2))

  * Math.cos(deg2rad(theta));

  dist = Math.acos(dist);

  dist = rad2deg(dist);

  double miles = dist * 60 * 1.1515;

  return miles;

  }

  //将角度转换为弧度

  static double deg2rad(double degree) {

  return degree / 180 * Math.PI;

  }

  //将弧度转换为角度

  static double rad2deg(double radian) {

  return radian * 180 / Math.PI;

  }

更多相关文章

  1. Android传感器---Motion Sensor(三)
  2. Android开发——SQLite数据库(二)android studio创建数据库,进行插
  3. Android传感器分析 seneor
  4. Android获取定位权限,获取设备所在的经纬度
  5. Android(安卓)API Guides---Environment Sensors
  6. Android集成百度定位以及导航详解
  7. Android(安卓)百度地图 SDK v3.4.0 定位与结合方向传感器
  8. Android:用 SQLite 实现 用户的登录查询功能(详解+效果图)
  9. Android(安卓)手机app三种方法获取定位地址(自带API,外接SDK,获取外

随机推荐

  1. 开发环境之Mac上Android(安卓)Studio上虚
  2. Android开发平台简介
  3. Android多媒体数据库之MediaStore研究
  4. Webview实现Android和JS通信
  5. CAMERA(12)---[Android相机]光线传感器识
  6. android 那些事---主线程是线程不安全的
  7. android json 转换
  8. android inputType属性
  9. Android(Java):把EHCache集成到android项
  10. 搭建Android UI Testing自动化测试开发环