资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

arcgisandroid之定位功能的示例代码

关于定位的功能,开发,很早之前就有做过百度的定位功能。起初是有想法把百度的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用法。希望对大家的学习有所帮助,也希望大家多多支持创新互联。


当前名称:arcgisandroid之定位功能的示例代码
链接URL:http://cdkjz.cn/article/gojpph.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220