权限

 <!--用于进行网络定位--><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission><!--用于访问GPS定位--><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission><!--获取运营商信息,用于支持提供运营商信息相关的接口--><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission><!--用于访问wifi网络信息,wifi信息会用于进行网络定位--><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission><!--这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位--><uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission><!--用于访问网络,网络定位需要上网--><uses-permission android:name="android.permission.INTERNET"></uses-permission><!--用于读取手机当前的状态--><uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission><!--写入扩展存储,向扩展卡写入数据,用于写入缓存定位数据--><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission><!--用于申请调用A-GPS模块--><uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission><!--用于申请获取蓝牙信息进行室内定位--><uses-permission android:name="android.permission.BLUETOOTH"></uses-permission><uses-permission android:name="android.permission.BLUETOOTH_ADMIN"></uses-permission><!--允许程序打开网络套接字--><uses-permission android:name="android.permission.INTERNET" /><!--允许程序设置内置sd卡的写权限--><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!--允许程序获取网络状态--><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><!--允许程序访问WiFi网络信息--><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><!--允许程序读写手机状态和身份--><uses-permission android:name="android.permission.READ_PHONE_STATE" /><!--允许程序访问CellID或WiFi热点来获取粗略的位置--><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

Activity

package com.jia.wangjiamap;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;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.maps.AMap;
import com.amap.api.maps.LocationSource;
import com.amap.api.maps.MapView;
import com.amap.api.maps.model.MyLocationStyle;public class MainActivity extends AppCompatActivity implements LocationSource, AMapLocationListener {private MapView mapView;OnLocationChangedListener listener;AMapLocationClient client;AMapLocationClientOption option;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mapView = findViewById(R.id.mapView);mapView.onCreate(savedInstanceState);AMap aMap = null;if(aMap == null){aMap = mapView.getMap();}aMap.setLocationSource(this);aMap.setMyLocationEnabled(true);aMap.setMyLocationType(AMap.LOCATION_TYPE_LOCATE);}@Override
protected void onDestroy() {super.onDestroy();mapView.onDestroy();if(null != client){client.onDestroy();}
}@Override
protected void onResume() {super.onResume();mapView.onResume();
}@Override
protected void onPause() {super.onPause();mapView.onPause();
}@Override
protected void onSaveInstanceState(Bundle outState) {super.onSaveInstanceState(outState);mapView.onSaveInstanceState(outState);
}@Override
public void activate(OnLocationChangedListener onLocationChangedListener) {listener = onLocationChangedListener;if(client == null){//初始化定位client = new AMapLocationClient(this);//初始化定位参数option = new AMapLocationClientOption();//设置定位回调监听client.setLocationListener(this);//设置为高精度定位模式option.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);//设置定位参数client.setLocationOption(option);//启动定位client.startLocation();}
}
//停止定位
@Override
public void deactivate() {listener = null;if (client!=null) {client.stopLocation();client.onDestroy();}client = null;
}
//定位成功后回调参数
@Override
public void onLocationChanged(AMapLocation aMapLocation) {if (listener!=null&&aMapLocation!=null) {if(aMapLocation!=null&&aMapLocation.getErrorCode()==0){listener.onLocationChanged(aMapLocation);}else {String errText = "定位失败," + aMapLocation.getErrorCode()+ ": " + aMapLocation.getErrorInfo();Log.e("AmapErr",errText);}}
}

}

高德地图定位5.0以下相关推荐

  1. 安卓开发 高德地图定位的封装 十分钟上手

    前言 地图作为开发中三方sdk中较常遇到的一项,集成起来并不麻烦但是不小心踩坑可能会浪费较多时间,如果项目中多处使用还容易造成代码大量冗余,今天我们来将高德地图定位功能集成一个功能化模块,只需两分钟应 ...

  2. Android MVVM框架搭建(八)高德地图定位、天气查询、BottomSheetDialog

    Android MVVM框架搭建(八)高德地图定位.天气查询.BottomSheetDialog 前言 正文 一.集成SDK 二.基础配置 ① 权限配置 ② 配置Key 三.显示地图 ① MapFra ...

  3. RN导入高德地图定位的用法实例

    转载自:[译]React Native开源高德地图定位组件(react-native-amap-location) -江清清的技术专栏 1.NPM install 1 npm install relo ...

  4. 高德地图定位的简单实现

    1.要实现高德地图的定位,首先要下载高德地图的SDK以及高德地图定位的SDK 下载地址:http://lbs.amap.com/api/android-sdk/download/ http://lbs ...

  5. android 高德地图 lbstraceclient,安卓高德地图定位篇-(1)

    安卓高德地图定位.先看效果图: STEP1: 先去高德开放平台注册账号,这个不用多说吧 网址:https://lbs.amap.com/ 之后再去控制台-应用管理找到自己的key,如下图所示 STEP ...

  6. autojs之高德地图定位

    使用场景 定位 效果展示 开发环境配置 软件 版本 autojs 8.7.3-0 java 1.8.0_131 android studio 4.1.2 原理 autojs使用高地地图sdk, 实现设 ...

  7. android中高德地图定位功能并且获取定位的城市

    一.概述 今天再一次用到了地图定位功能和地图显示功能,以前一直用的是高德地图定位,这次还是用高德,记录一下以便以后再做时方便一些.因为业务需要的功能不是很全,可以参考https://www.2cto. ...

  8. uniapp使用高德地图定位(兼容app)

    1.获取Key  查看官方文档 需要:应用包名和SHA1(获取方法查看) ​2.配置manifest.json ​ 3.设置安全通讯域名 登录微信公众平台,在 "设置"->& ...

  9. vue-amap 实现高德地图定位 + 搜索 +回显

    1.注册成为开发者  -> 申请秘钥key 调用高德api 高德地图开放平台:https://lbs.amap.com/?ref=https://console.amap.com/dev/ind ...

最新文章

  1. 从PCD文件写入和读取点云数据
  2. linux下xampp(apache)中配置域名访问,以及遇到的问题
  3. BERT-of-Theseus:基于模块替换的模型压缩方法
  4. boost::multiprecision模块mpfr_float相关的测试程序
  5. 现在的编译器还需要手动展开循环吗_DSP(知识点+思考题)
  6. 小小鸡蛋竟然能够承受1200kg重量!?
  7. 工作141:map形成数组
  8. PPT模板(淘宝花钱买来的,免费分享给大家)
  9. pacs系统服务器配置,pacs系统 服务器配置
  10. 自动化测试--testNG
  11. 『线段树及扫描线算法 Atlantis』
  12. 用正则表达式验证联系电话(及区号)
  13. 超详细傻瓜iPhone自定义来电铃声教程
  14. 如何制作一个横版格斗过关游戏_地下城与勇士M电脑版,如何在模拟器上使用键鼠操作...
  15. 超级表格的高级使用者都在用视图做些什么?
  16. 讨教大学|六西格玛之属性值数据一致性分析
  17. 华硕天选1隐藏盘恢复系统
  18. 常见算法:C语言求素数的问题
  19. 软件破解网站列表--整理于2014-3-30
  20. 马云经典语录大全【倒眼看世界,一切皆有可能】

热门文章

  1. 信息安全完全参考手册之安全策略、标准、流程和指南(第五章)
  2. PHP自动压缩CSS文件方法,php 压缩多个CSS文件的实现代码
  3. vRealize-Operations-Manager-Appliance-8.2.0 VROPS 8.2安装部署
  4. 基于域名或URL路径进行转发
  5. 阿里云专有网络环境下不同账号之间内网互通(内网高速通道)
  6. 常常被人忽略的VC备份
  7. Kubernetes学习总结(10)—— 何为云原生,与 kubernetes 是什么关系
  8. 敏捷开发系列学习总结(7)——敏捷开发的10大指导原则
  9. concatenate python_python中numpy.concatenate()函数的使用
  10. java中有关类的程序设计_《Java程序设计一》 1,设计课程类及类中包含的属性和方法....