Android学习之使用高德Location实现定位
2016-08-22 09:53
549 查看
import com.amap.api.location.AMapLocation; import com.amap.api.location.AMapLocationClient; import com.amap.api.location.AMapLocationClientOption; import com.amap.api.location.AMapLocationListener; import com.amap.api.location.AMapLocationClientOption.AMapLocationMode; import com.haiyisoft.android.shell.R; import android.app.Activity; import android.os.Bundle; public class LocationActivity extends Activity implements AMapLocationListener{ /** 声明mlocationClient对象 */ private AMapLocationClient mlocationClient = null; /** 声明mLocationOption对象 */ private AMapLocationClientOption mLocationOption = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.hy_notify_layout); initLocation(); } /** * 获取定位坐标 */ public void initLocation() { mlocationClient = new AMapLocationClient(this); //初始化定位参数 mLocationOption = new AMapLocationClientOption(); //设置定位监听 mlocationClient.setLocationListener(this); //设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationMode.Hight_Accuracy); //设置定位间隔,单位毫秒,默认为2000ms mLocationOption.setInterval(2000); //设置是否只定位一次,默认为false mLocationOption.setOnceLocation(true); //设置setOnceLocationLatest(boolean b)接口为true,启动定位时SDK会返回最近3s内精度最高的一次定位结果。 //如果设置其为true,setOnceLocation(boolean b)接口也会被设置为true,反之不会。 mLocationOption.setOnceLocationLatest(true); //设置定位参数 mlocationClient.setLocationOption(mLocationOption); // 此方法为每隔固定时间会发起一次定位请求,为了减少电量消耗或网络流量消耗, // 注意设置合适的定位时间的间隔(最小间隔支持为2000ms),并且在合适时间调用stopLocation()方法来取消定位请求 // 在定位结束后,在合适的生命周期调用onDestroy()方法 // 在单次定位情况下,定位无论成功与否,都无需调用stopLocation()方法移除请求,定位sdk内部会移除 //启动定位 mlocationClient.startLocation(); } /** * 高德定位回调 */ @Override public void onLocationChanged(AMapLocation amapLocation) { if (amapLocation != null) { Double latitude = amapLocation.getLatitude(); Double longitude = amapLocation.getLongitude(); } } @Override protected void onDestroy() { super.onDestroy(); mlocationClient.unRegisterLocationListener(this); mlocationClient = null; } }
相关文章推荐
- Android 使用基站、wifi实现定位
- Android之UI学习篇八:使用GridView实现九宫格的菜单
- Android使用百度地图SDK实现定位功能
- Android应用程序实现定位功能(使用百度定位SDK)
- CSS学习笔记:使用绝对定位实现横向两列布局
- Android学习19--使用ContentProvider实现数据共享
- android使用百度地图、定位SDK实现地图和定位功能!(最新、可用+吐槽)
- Android动画学习(三)之使用ValueAnimator和ObjectAnimator实现动画实例
- Android学习之 使用ContentProvider实现数据共享
- Android NDK 学习(5) 使用CDT特性 实现自动化编译
- Android学习备忘004——使用ViewFlipper实现滑动翻页
- Android开发学习之使用ContentProvider实现数据共享
- Android之UI学习篇十:使用TabHost实现微博客户端界面
- Android使用Google提供的地图实现定位时LocationListener的各个方法
- Android学习-使用单例模式实现一键退出APP
- Android入门:使用Android GPS实现简单的定位
- Android 系统api实现定位及使用百度提供的api来实现定位
- Android学习-使用单例模式实现一键…
- Android实现监听手机通话--仅供学习使用--
- android使用百度地图、定位SDK实现地图和定位功能!(最新、可用+吐槽)