Android之 GPS学习笔记

========================================
GPS:全球定位系统
 GPS由三部分组成:GPS卫星组成的空间部分,若干地面组成的控制站,用户手中的接收机。
Android 为电话管理支持提供了TelephonyManager
     为音频管理提供了AudioManager
     为支持GPS提供了LocationManager。
获取: LocationManager lm = (LocationManager)Context. getSystemService(Context.LOCATION_SERVICE);
 //与获取TelephonyManager,AudioManager的方法相似。
 List<String> providers = lm.getAllProviers();//获取系统全部可用的LocationProvider的对象,返回List<String>
 的providers的names集合。android


LocationProvider:
 获取LocationProvider的对象:
  *经过名称来得到指定的LocationProvider对象。//LocationProvider provider = lm.getProvider(LocationManager.GPS_PROVIDER);
  **经过Criteria得到LocationProvider,Criteria至关于一个过滤器,Location.getBestProvider(Criteria criteria,boolean enabledOnly);来
   获取符合条件的Provider。
 //LocationProvider 中最经常使用的LocationManager.GPS_PROVIDERgit


Location 
 经过程序能够实时的获取用户所在的经度,维度,高度,方向,移动速度等。详情见:疯狂android讲义P667ide


步骤:
 1.获取系统的LocationManager对象.注意查看:LocationManager的API文档。
  LocationManager lm = (LocationManager)Context. getSystemService(Context.LOCATION_SERVICE);
 2.使用LocationManager,经过指定LocationProvider来获取定位信息,定位信息由Location对象表示
  LocationProvider provider = lm.getProvider(String name);
 3.从Location对象中获取定位信息。
  // Location location = lm.getLastKnownLocation(String provider);
//访问GPS须要有权限:故应该在AndoridManifest.xml进行配置:
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>spa


临近警告;
 LocationManager提供了一个方法:addProximityAlert(double latitude,double longitude,float radius,long expriration,PendingIntent intent);添加一个临近警告。
  对应参数为:经度,维度,警告持续的时间:当-1时永久持续,intent表示:临近时触发的intent组件。
==============================================================================
小结:
 本章主要介绍了Android提供 的GPS支持,目前绝大多数手机已经提供了GPS的硬件支持,均可以做为GPS定位系统的接收机,而咱们要作的是从android系统中获取GPS定位信息。
 须要重点掌握:LocationManager,LoccationProvider与LocationListener等API的功能和用法,并能够经过他们监听获取GPS定位信息。
 获取GPS只是开发其余应用的一个基本前提,以后咱们要结合Google Map进行定位,跟踪等xml

//Baidu Map 高德map 很不错的map ,美团的定位系统是:soso地图。搜房网也是soso地图对象

相关文章
相关标签/搜索