请选择 进入手机版 | 继续访问电脑版

Android 定位不依赖三方sdk

[复制链接]
为你演绎 发表于 2021-1-3 11:56:08 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
@Android 定位不依赖三方sdk
申请定位权限

[code][/code]

界说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();
}
}

来源:https://blog.csdn.net/wangyang519/article/details/112003013
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )