@Android 定位不依赖三方sdk
申请定位权限

定义LocationManager对象实现监听接口

获取到维度 经度 使用GetAddressUtil工具类得到位置信息

根据经纬度获取当前位置地址信息工具类

package com.example.myapplication;
import android.content.Context;
import android.location.Address;
import android.location.Geocoder;
import android.os.Build;
import android.util.Log;

import androidx.annotation.RequiresApi;

import java.util.List;

public class GetAddressUtil {
Context context;
public GetAddressUtil(Context context) {
this.context = context;
}
@RequiresApi(api = Build.VERSION_CODES.GINGERBREAD)
public String getAddress(double lnt, double lat) {
Geocoder geocoder = new Geocoder(context);
boolean falg = geocoder.isPresent();
StringBuilder stringBuilder = new StringBuilder();
try {
//根据经纬度获取地理位置信息—这里会获取最近的几组地址信息,具体几组由最后一个参数决定
List

addresses = geocoder.getFromLocation(lat, lnt, 1);
if (addresses.size() > 0) {
Address address = addresses.get(0);
for (int i = 0; i < address.getMaxAddressLineIndex(); i++) {
//每一组地址里面还会有许多地址。这里我取的前2个地址。xxx街道-xxx位置
if (i == 0) {
stringBuilder.append(address.getAddressLine(i)).append("-");
}
if (i == 1) {
stringBuilder.append(address.getAddressLine(i));
break;
}
}
stringBuilder.append(address.getAdminArea());//省份
stringBuilder.append(address.getLocality());//市
stringBuilder.append(address.getFeatureName());//周边地址
Log.d(“wy”, “地址信息—>” + stringBuilder);
}
} catch (Exception e) {
e.printStackTrace();
}
return stringBuilder.toString();
}

}

更多相关文章

  1. Android开发人员不得不收集的代码(持续更新中)
  2. Androidの通过查询电话号码或ID获取联系人头像
  3. android经典开源代码集合
  4. Android中文API(136) —— GeoCoder
  5. Android程序版本控制工具类
  6. Android(安卓)自带日期(DatePicker)和时间(TimePicker)选择器使
  7. Android之权限管理
  8. android 根据res文件夹下(如res/raw)文件名获取其id
  9. 关于Android(安卓)API,你所不知道的

随机推荐

  1. android 多点触摸 实现图片缩放 Image Zo
  2. Android的Animation
  3. Android(安卓)IPC 通讯机制源码分析 二
  4. android ndk开发,fatal错误记录
  5. 在Android中创建一个下拉菜单
  6. App内嵌H5页面联调接口
  7. android 设置EditText可输入和不可输入状
  8. android tablayout 设置字体大小
  9. android 弹性效果
  10. [连载 5/15] Android(安卓)从入门到精通E