配置
官方:链接: 参考官方配置.
首先给GPS权限检查 如上文链接: 权限检查.
配置完后
- 高德地图 获取定位
private fun gaode() {
//初始化AMapLocationClientOption对象
mLocationOption = AMapLocationClientOption()
//初始化定位
mLocationClient = AMapLocationClient(applicationContext)
//设置定位回调监听
mLocationClient!!.setLocationListener(mLocationListener)
//设置定位模式为AMapLocationMode.Hight_Accuracy,高精度模式。
mLocationOption!!.locationMode = AMapLocationClientOption.AMapLocationMode.Hight_Accuracy
//设置定位间隔,单位毫秒,默认为2000ms,最低1000ms。
mLocationOption!!.interval = 100000
//设置是否返回地址信息(默认返回地址信息)
mLocationOption!!.isNeedAddress = true
//给定位客户端对象设置定位参数
mLocationClient!!.setLocationOption(mLocationOption)
//启动定位
mLocationClient!!.startLocation()
}
//声明定位回调监听器
var mLocationListener =
AMapLocationListener { amapLocation ->
if (amapLocation != null) {
if (amapLocation.errorCode == 0) {
// val latitude1=amapLocation.latitude 获取纬度
// val longitude1=amapLocation.longitude 获取经度
//amapLocation. province:省级 city:市级 district:区级 address:详细地址
//以下两行是获取区级的天气
QWeatherConfig.init("b447f9d18ca4425baf2240755466f8ea", amapLocation.district)
//获取天气布局
initWeater()
} else {
//定位失败时,可通过ErrCode(错误码)信息来确定失败的原因,errInfo是错误信息,详见错误码表。
e(
"AmapError", "location Error, ErrCode:"
+ amapLocation.errorCode + ", errInfo:"
+ amapLocation.errorInfo
)
}
}
}