GRPC 使用地理编码器失败
Posted
技术标签:
【中文标题】GRPC 使用地理编码器失败【英文标题】:GRPC Failed using geocoder 【发布时间】:2018-01-29 11:42:04 【问题描述】:我正在使用安卓工作室。
点击时我正在尝试从 googlemaps 获取位置名称。
我正在使用地理编码器。
每次我点击地图上的某个地方时,标记都会出现在那里,但我无法获取城市名称,并且出现 grpc failed 错误。
我该怎么办?我用 api 23,24,25 试过了,但都没有。
我的 onMapClick 功能:
@Override
public void onMapClick(LatLng latLng)
mMap.clear();
mMap.addMarker(new MarkerOptions().position(latLng).title("Konum"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
Geocoder geocoder = new Geocoder(MapsActivity.this.getBaseContext(), Locale.getDefault());
try
List<Address> city = geocoder.getFromLocation(latLng.latitude,latLng.longitude,1);
if (city != null && city.size() > 0)
Log.i("Info",city.get(0).getLocality());
catch (IOException e)
e.printStackTrace();
W/System.err: java.io.IOException: grpc failed W/System.err:在 com.example.umut.googlemapstest.MapsActivity$override.onMapClick(MapsActivity.java:127)
哪个显示
List<Address> city = geocoder.getFromLocation(latLng.latitude,latLng.longitude,1);
这段代码
【问题讨论】:
这是在模拟器上还是在实际设备上?地理编码器存在一个已知问题,无法在 android 模拟器上运行。 是的,我正在使用 android studio 模拟器。我没有真正的 android 设备。有其他选择吗? 不幸的是,目前没有针对模拟器的任何解决方法。 你运气好吗?我在摩托罗拉设备中遇到了这个问题,它在模拟器上运行良好。 我相信现在应该修复它在模拟器上不起作用的问题。 【参考方案1】:我有异常“java.io.ioexception grpc failed”的解决方案:
try
Geocoder geocoder = new Geocoder(MainActivity.this, Locale.getDefault());
List addresses = geocoder.getFromLocation(latitude, longitude, 1);
List<Address> addresslist = addresses;
String address = addresslist.get(0).getAddressLine(0);
Log.d("add",address);
catch (IOException e)
e.printStackTrace();
【讨论】:
以上是关于GRPC 使用地理编码器失败的主要内容,如果未能解决你的问题,请参考以下文章
当我尝试使用地理编码器获取地址时,给出“未处理的异常:PlatformException(失败,失败,null)”的运行时错误