1

我正在使用地图和位置,以下代码是正确的,但它也显示grpc failed

Geocoder gc=new Geocoder(this);
        List<Address> list=gc.getFromLocationName("White House",1);
        Address adr=list.get(0);

我该如何解决?我正在使用安卓工作室 2.3.3。

4

5 回答 5

1

我遇到了同样的错误,我在一个片段中,我的解决方案是创建地理编码器new Geocoder(getActivity().getApplicationContext());发送new Geocoder(getContext());

希望对你有帮助

于 2017-10-20T13:43:07.740 回答
1

此问题已在https://stackoverflow.com/a/46256093/20394中得到解决

解决方案是将 Google Play 服务升级到修订版 44+

于 2017-09-21T19:18:53.997 回答
0

我曾经得到同样的错误。我通过Geocoder以下方式创建解决了它:

Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.getDefault());
于 2018-04-28T15:00:11.993 回答
0

我通过添加解决了类似的问题

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

到我的清单文件。

在应用程序启动时关闭和打开 wifi 可以解决错误,但这使得我不必每次都这样做。

于 2021-06-18T15:36:05.947 回答
0

我通过减少主线程中的工作解决了这个问题。我试图重新启动模拟器并重新安装 android studio 但没有任何效果。然后,我注意到 logcat 中有一些消息

“跳过了 305 帧!应用程序可能在其主线程上做了太多工作。”

我认为我的应用程序工作繁重,所以我将所有谷歌地图的定位方法移动到后台线程,现在它就像一个魅力。希望能帮助到你。

于 2018-03-26T16:47:24.443 回答