温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

arcgis android之定位功能的示例代码

发布时间:2020-09-28 05:21:33 来源:脚本之家 阅读:161 作者:vaecer 栏目:移动开发

关于定位的功能,开发,很早之前就有做过百度的定位功能。起初是有想法把百度的Loc V3.2的定位SDK整合进来用。但是终归是想法,但是知道昨天,我问技术群,里面的一位朋友就说起了百度地位SDK整合进来的实现方法。顿时,我就思考了一会,随后就是很激动地操作起来。根据朋友给的一个demo。做了两天,终于算是真正将功能实现了。至于界面的美观或者样式的显示这个就偷懒掉了。

http://developer.baidu.com/map/sdk-android.htm

这个是百度的SDK。帮助文档。

第一次看这个定位的实现的时候,觉得按步骤来就可以实现,把该设置的参数设置好就行了。其实,的确就行了。很简单!
首先定位当前经纬度,然后设置定位点。

  private double lat=-1;//纬度
  private double lon=-1;//经度
 public class MainActivity extends ActivityBas{
    protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
  ArcGISRuntime.setClientId("1eFHW78avlnRUPHm");//取消arcgis默认图标
  dingweilocation();
  mapView.centerAt(lat, lon, true);//设置定位中心点
  mapView.setScale(1105828.1803422251);//设置显示比例
  }

private void dingweilocation() {
    //定位的方法
  LocationDisplayManager locationDisplayManager = mapView.getLocationDisplayManager();
  locationDisplayManager.setLocationListener(new LocationListener() {
    @Override
    public void onLocationChanged(Location location) {
      
      String bdlat=location.getLatitude()+""; 
      String bdlon=location.getLongitude()+"";
      if (bdlat.indexOf("E")==-1|bdlon.indexOf("E")==-1){
      //这里做个判断是因为,可能因为gps信号问题,定位出来的经纬度不正常。
        Log.i("定位",lat+"?"+lon);
        lat = location.getLatitude();//纬度
        lon = location.getLongitude();//经度
      }
    }

    @Override
    public void onStatusChanged(String s, int i, Bundle bundle) {
    }

    @Override
    public void onProviderEnabled(String s) {
    }

    @Override
    public void onProviderDisabled(String s) {
    }
  });
  locationDisplayManager.start();
}
 }

好了,今天就写到这里,以后我再介绍其他arcgis用法。希望对大家的学习有所帮助,也希望大家多多支持亿速云。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI