English
登录
加入联盟
找回密码
航空人生
新一代连飞客户端下载
空管人生
中国航空运动协会推荐
WEFLY
模拟飞行玩家聊天工具
门户
文章
商城
原创商城
官方淘宝
二手市场
学院
云课堂
考试
资料下载
论坛
模拟飞行
低空飞行
太空探索
航圈
联机
航空人生(连飞)
飞行人生(虚航)
空管人生(虚管)
空战人生(对战)
工具
联飞地图
航路查询
航图查询
气象报文
资源
插件库
素材库
云网盘
企业
飞行者联盟
»
论坛
›
【飞行仿真实验室】
›
软件开发
›
OpenStreetMap
›
如何在Android中使用OpenStreetMap的经纬度获得地址 ...
返回列表
发新帖
查看:
1259
|
回复:
1
如何在Android中使用OpenStreetMap的经纬度获得地址
[复制链接]
chinesezgb
chinesezgb
当前离线
UID
4913
注册时间
2014-4-12
在线时间
小时
最后登录
1970-1-1
精华
阅读权限
60
听众
收听
雷达卡
已绑定手机
发表于 2022-9-25 19:40:12
|
显示全部楼层
|
阅读模式
如何在Android中使用OpenStreetMap的经纬度获得地址
android
,
经纬度
,
如何
,
何在
,
使用
相关帖子
•
【AEROFLY FS GLOBAL】AF4以及Android Beta更新新飞机AIRBUS A319
•
X-Plane10使用教程PC配置要求
•
【干货】如何拥有一个好的着陆(软着陆)
•
苹果iOS如何下载《Aerofly Fs Global》全内购版本手游
•
如何使用微软飞行模拟2020内置ATC完成一次飞行? ZSPD-RJTT全程飞行演示
•
被淘汰的客机,如何称霸货运飞行?
•
[机翻中字] 让罗技粉丝都绷不住的首款磁轴键盘 PRO X TKL RAPID 表现如何?
•
AVA底座现已正式发售!一条视频教你如何在图马思特AVA模块化基座上更改配置
•
软件教程 - 如何把小摇杆设置为虚拟鼠标
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
仓颉
仓颉
当前离线
UID
5018
注册时间
2014-4-19
在线时间
小时
最后登录
1970-1-1
精华
阅读权限
20
听众
收听
雷达卡
发表于 2022-9-25 19:51:08
|
显示全部楼层
1. 试试这个代码获取地址。Geocoder geocoder;
List<Address> addresses;
geocoder = new Geocoder(this, Locale.getDefault());
addresses = geocoder.getFromLocation(latitude, longitude, 1);
String address = addresses.get(0).getAddressLine(0);
String city = addresses.get(0).getAddressLine(1);
String country = addresses.get(0).getAddressLine(2);
为openstreammap final String requestString = " CodeGo.net +
Double.toString(lat) + "&lon=" + Double.toString(lon) + "&zoom=18&addressdetails=1";
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(requestString));
try {
@SuppressWarnings("unused")
Request request = builder.sendRequest(null, new RequestCallback() {
@Override
public void onResponseReceived(Request request, Response response) {
if (response.getStatusCode() == 200) {
String city = "";
try {
JSONValue json = JSONParser.parseStrict(response);
JSONObject address = json.isObject().get("address").isObject();
final String quotes = "^\"|\"$";
if (address.get("city") != null) {
city = address.get("city").toString().replaceAll(quotes, "");
} else if (address.get("village") != null) {
city = address.get("village").toString().replaceAll(quotes, "");
}
} catch (Exception e) {
}
}
}
});
} catch (Exception e) {
}
2. 这里是我的解决方案。我认为它为你的作品也。 public String ConvertPointToLocation(GeoPoint point) {
String address = "";
Geocoder geoCoder = new Geocoder( getBaseContext(), Locale.getDefault());
try {
List<Address> addresses = geoCoder.getFromLocation(
point.getLatitudeE6() / 1E6,
point.getLongitudeE6() / 1E6, 1);
if (addresses.size() > 0) {
for (int index = 0; index < addresses.get(0).getMaxAddressLineIndex(); index++)
address += addresses.get(0).getAddressLine(index) + " ";
}
Toast.makeText(getBaseContext(), address, Toast.LENGTH_SHORT).show();
}
catch (IOException e) {
e.printStackTrace();
}
return address;
}
回复
支持
反对
使用道具
举报
照妖镜
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入联盟
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表