最近在做一个安卓地图项目,需要用到世界地图,但国内谷歌基本已经不能用了,这时就需要一个新的开源api,经过别人的介绍才发现了MapBox 这个开源免费的api,加载速度比osm地图要快多了,一下是我碰到的一些问题,希望可以帮到其他的一些人

    int screenWidth = getActivity().getWindowManager().getDefaultDisplay().getWidth();float width = DensityUtils.px2dp(context, screenWidth);zoom = 22 - Math.rint(Math.log(zoomFirst * MERCATOR_RADIUS * Math.PI / (180.0 * width)));thisSourceDateList = MainActivityAll.getSourceDateList();WebSourceTileLayer ws = new WebSourceTileLayer("openstreetmap", "http://tile.openstreetmap.org/{z}/{x}/{y}.png");ws.setName("OpenStreetMap").setAttribution("© OpenStreetMap Contributors").setMinimumZoomLevel(1).setMaximumZoomLevel(21);mMapView.setTileSource(ws);mMapView.setCenter(center);mMapView.setZoom((float) zoom);

这是设置地图的一些基本信息这种 WebSourceTileLayer 方法加载的比默认的加载速度快近一倍,不过就是图层不太好看

  LocationListener locationListener = new LocationListener() {@Overridepublic void onStatusChanged(String provider, int status, Bundle extras) {}@Overridepublic void onProviderEnabled(String provider) {}@Overridepublic void onProviderDisabled(String provider) {}@Overridepublic void onLocationChanged(Location location) {// 更新当前设备的位置信息showLocation(location);}};

这是定位的监听

        LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
//      locationManager.removeUpdates(locationListener);  ondestroy方法移除监听器// 获取所有可用的位置提供器List<String> providerList = locationManager.getProviders(true);String provider;if (providerList.contains(LocationManager.GPS_PROVIDER)) {provider = LocationManager.GPS_PROVIDER;} else if (providerList.contains(LocationManager.NETWORK_PROVIDER)) {provider = LocationManager.NETWORK_PROVIDER;} else {// 当没有可用的位置提供器时,弹出Toast提示用户Toast.makeText(context, "No location provider to use",Toast.LENGTH_SHORT).show();return;}Log.e("location", provider);Location location = locationManager.getLastKnownLocation(provider);if (location != null) {// 显示当前设备的位置信息showLocation(location);}locationManager.requestLocationUpdates(provider, 5000, 1, locationListener);

在官方的api看的好麻烦啊

MapViewListener mapViewListener = new MapViewListener() 

实例化他的接口,可以监听手势在地图的操作

mMapView.addListener(mapListener);
这个方式可以实例化他的地图图层变化,第一次碰到这种add的,找了我好久
一些地图功能这些方式基本可以实现了,还有一些设置markdr的 ,划线的demo上有,就不一一举例了
这是项目的demo,适合初学者必看文档方便多了http://download.csdn.net/download/zhayunbiao/9968836
这个项目还有很多不懂得地方,希望有懂得人可以交流交流
联系QQ:1925413099

android MapBox地图基于openstreetmap开发相关推荐

  1. [android] 百度地图开发 (一).申请AK显示地图及解决显示空白网格问题

        最近做android百度地图,但是使用baidumapapi_v2_3_1.jar和libBaiduMapSDK_v2_3_1.so显示百度地图时总是遇到问题--只显示网格而没有显示地图,网络 ...

  2. android美食app设计图,基于位置的Android美食地图应用的设计与实现

    摘要: 随着近些年移动互联网的迅猛发展和智能手机的普及,手机应用迎来于广阔的发展空间,移动LBS应用应运而生.传统的位置服务主要以网页或单机的形式实现,已无法满足用户日益增长的移动需求.而移动LBS应 ...

  3. android 地球坐标 火星坐标系,Android LBS地图开发:地球地理GPS坐标系经纬度偏移偏差...

    Android LBS地图开发基础知识之地球地理GPS坐标系经纬度偏移偏差 通常,我们所说的地球地理经纬度是WGS-84坐标系(World Geodetic System-1984 Coordinat ...

  4. 在iOS中进行Mapbox地图开发杂谈

    最近因项目需要,在app中要集成Mapbox,并且要能与苹果地图切换使用.从最早认识Mapbox到最终集成完毕,中间有一些断断续续,但总的时间也不算短了,关于这方面的资料其实是比较少的,能参考的基本都 ...

  5. 基于android的地图毕业设计,基于android百度地图应用系统_毕业设计.docx

    基于android百度地图应用系统_毕业设计 南京晓庄学院2015届本科毕业论文 分类号: 学校代码:11460 学 号南京晓庄学院本科生毕业设计 基于Android平台和百度地图的应用系统 Appl ...

  6. android百度地图调用animateto 会报空指针异常,基于Android的百度地图应系统毕业设计.docx...

    基于Android的百度地图应系统毕业设计 分类号: 学校代码:11460 学 号南京晓庄学院本科生毕业设计 基于Android平台和百度地图的应用系统 Application system base ...

  7. [android] 百度地图开发 (三).定位当前位置及getLastKnownLocation获取location总为空问题

           前一篇百度地图开发讲述"(二).定位城市位置和城市POI搜索",主要通过监听对象MKSearchListener类实现城市兴趣点POI(Point of Intere ...

  8. Android 手机地图开发-高德地图问题

    高德地图地址:http://code.autonavi.com 示例程序及SDK下载地址 如何获取AutoNavi MAP API密钥 AutoNavi提供的地图通过MapView对象进行显示.Map ...

  9. Android LBS地图开发:地球地理GPS坐标系经纬度偏移偏差

    本文作者:ZhangPhil 欢迎各位转载!但请注明转载出处: http://blog.csdn.net/zhangphil/article/details/48024831 Android LB ...

最新文章

  1. python使用matplotlib可视化雷达图(polar函数可视化雷达图、极坐标图、通过径向方向来显示数据之间的关系)
  2. 微软获GPT-3独家授权,OpenAI创始人马斯克:与初衷相悖
  3. linux下ipmitool路径,Linux中的ipmitool工具的使用
  4. 安装GCC-8.3.0及其依赖
  5. Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方
  6. linux如何升级cmake,ubuntu下升级cmake
  7. C# new关键字和对象类型转换(双括号、is操作符、as操作符)
  8. react本地储存_如何使用React和本地存储构建freeCodeCamp的配方框
  9. autotools 自动编译系列简介
  10. 云计算交流会计算机操作,计算机二级考试真题-word-小王-云计算技术交流大会...
  11. E20180404-ts
  12. Linux 网络编程——UDP编程
  13. OpenCore引导配置说明第五版
  14. Word:删不掉的空白页?
  15. 关于Pytorch中detach
  16. 深入理解Java虚拟机读书笔记之垃圾收集器与内存分配策略
  17. (附代码)数独大作业【读取数独,解数独,生成唯一解数独(随机,特定形状,不同难度生成),玩数独】
  18. Python的正则表达式和re模块
  19. android仿朋友圈教程,android 仿朋友圈动态 图片查看效果
  20. KMeans聚类 K值的确定以及初始类簇中心点的选取

热门文章

  1. 关于uni-app手机nfc开启、读取、写入功能
  2. Oracle因修改pga和sga超过memory限制size报错解决
  3. 视觉显著性检测——PR曲线
  4. 2023版最新最强大数据面试宝典
  5. 灌南县计算机中专学校,江苏省灌南中等专业学校2021年招生简章
  6. 格凌科技浅谈数据中心的PUE值
  7. wms仓库管理系统的核心功能及作用
  8. 案例:用户信息管理系统
  9. python+opencv将表格图片按照表格框线分割、识别
  10. 1.Oracle中的表空间