实现位置服务的技术有GPS和google网络地图,将这些不同的定位技术统称为LBS,
LocationManager 有两种定位,GPS和NETWORK
locationProvider
通过他们可以得到某人的当前位置或者进行位置跟踪,和设定区域提醒功能。
1 示例:获取位置信息
androidmanifest.xml
gps方法
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
NETWORK方式
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
定位用户的位置:
//得到LocationManager对象
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
//设定定位方式为GPS_PROVIDER,得到位置对象Location
Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double lat = location.getLatitude();
double lng = location.getLongitude();
latLongString = "纬度:" + lat + "\n经度:" + lng;
myLocationText.setText("您当前的位置是:\n" +latLongString);
设定模拟器 显示位置信息。
处理制定定位方式以外还可以使用Criteria让系统选择最符合条件的LOCATIONPROVIDER.
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_LOW);
String provider = locationManager.getBestProvider(criteria, true);
可以同时存在多个,根据相关程度系统自行决定
可以用下个方法返回所有与查询条件想符合的locationProvider
List<String> matchProvider = locationManager.getProvider(criteria, false);
2 跟踪位置变化
设定监听器 locationListener
locationManager.requestLocationUpdates(provider, 2000, 10,
locationListener);
}
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}
public void onProviderDisabled(String provider){
updateWithNewLocation(null);
}
public void onProviderEnabled(String provider){ }
public void onStatusChanged(String provider, int status,
Bundle extras){ }
};
分享到:
相关推荐
Android位置服务和地图应用是移动开发的重要组成部分,通过LocationManager和Google Maps API,开发者可以构建出功能丰富的地图应用。在实际开发中,我们需要根据应用的需求,合理选择定位方式,优化地图功能,同时...
Android位置服务与地图应用.pdf 介绍全面
总的来说,Android的位置服务和地图应用提供了强大的功能,让开发者能够构建各种基于位置的应用。理解并熟练掌握LocationManager、LocationProviders、MapView和覆盖层的使用,是Android开发者必备的技能之一。通过...
在Android平台上,开发一款能够获取并显示GPS(全球定位系统)位置的地图应用是一项常见的任务。这个"android GPS地图源代码,可以获取GPS位置,可以运行.zip...这些知识点是Android位置服务和地图应用开发的基础。
总的来说,"天地图开发之Android-显示天地图"是一个涉及到Android SDK集成、地图API使用、地理位置服务、UI设计和性能优化等多个方面的问题。通过博客实例代码的学习和实践,可以深入了解如何在Android应用中实现天...
在 Android 平台上,位置服务通过 LocationManager 和 LocationProviders 对象来实现。 1. 位置服务概念 位置服务(Location-Based Services,LBS)是指融合了 GPS 定位、移动通信、导航等多种技术,提供了与空间...
本文将深入探讨如何在Android应用中实现实时定位,并允许用户通过拖动地图来改变显示的位置,从而模拟类似微信中的位置分享功能。我们将主要关注以下几个方面: 一、高德地图API的引入与初始化 在Android项目中使用...
最后,考虑到离线地图和缓存策略,可以利用百度地图API的离线地图服务,下载指定区域的地图数据,提高应用的离线可用性。 总的来说,实现“Android开发之百度地图定位打卡”涉及到Android应用开发基础、百度地图API...
在Android应用开发中,模拟微信发送位置功能通常涉及到集成百度地图API来实现...通过掌握上述知识点,开发者可以成功地在Android应用中实现类似微信的发送位置功能,利用百度地图API为用户提供便捷的定位和分享服务。
在Android应用开发中,集成地图服务是常见的需求之一。本篇将深入探讨如何在Android应用中使用谷歌地图API以及如何利用高德地图的数据资源来加载自定义的瓦片图层。这种技术通常用于显示特定区域的高精度地图、卫星...
- 百度地图API提供了驾车、步行、骑行等多种路径规划服务,可以根据起点和终点计算路线。 7. **离线地图**: - 虽然题目未明确提及,但可以讨论如何使用百度地图SDK实现离线地图功能,提高用户体验。 8. **...
- 为了性能优化,可以考虑使用异步任务加载地图和处理地理位置信息。 通过以上步骤,你就能在Android应用中成功地集成ArcGIS加载天地图,实现定位和标注功能。当然,ArcGIS SDK提供了许多其他功能,如图层管理、...
这个密钥是连接你的应用和百度地图服务的关键。 3. **配置AndroidManifest.xml** 在`AndroidManifest.xml`文件中,添加以下权限: - `INTERNET`:允许网络访问 - `ACCESS_FINE_LOCATION`:获取精确位置 - `...
- 保持 ArcGIS for Android 和天地图服务 API 的兼容性,及时更新库以获得最新功能和修复。 - 注意处理网络异常和地图加载失败的情况,提供友好的用户体验。 以上就是利用 ArcGIS for Android 加载天地图的详细过程...
以上就是使用Android和百度地图API实现定位用户位置的一些核心知识点。在实际开发中,还需要考虑性能优化、兼容性问题以及用户体验等多方面因素。通过不断学习和实践,你可以更好地掌握这一技术,为用户提供更优质的...
在Android开发中,百度地图API是一个非常常用的工具,它提供了丰富的地图展示、定位、路径规划等功能,极大地便利了开发者在构建地理位置相关应用时的工作。"老罗android 百度地图开发源码"是一个示例项目,它展示了...
ArcGIS for Android则通过`AGSLocationDataSource`类与Android的位置服务进行交互,获取实时位置更新。 2. 显示定位图标:使用`AGSSymbol`和`AGSPoint`对象创建一个代表用户当前位置的图层,将其添加到地图上。可以...
开发者可以通过学习和理解这个源码,提升自己在Android位置服务和地图应用开发方面的技能。然而,值得注意的是,任何涉及监控他人行踪的功能都应当以合法且透明的方式进行,尊重并保护用户的隐私权。
在天地图Android SDK中,这个jar包很可能是核心的API库,里面封装了与天地图服务交互的各种接口和功能,比如地图加载、图层管理、标注添加、地理编码等。 `libs`目录通常在Android开发中存放依赖库,这些库可能是....