【问题标题】:java.io.IOException: Unable to parse response from server at getFromLocationName()java.io.IOException:无法解析来自服务器的响应 getFromLocationName()
【发布时间】:2011-10-31 10:38:57
【问题描述】:

我知道这个问题以前经常被问到,但我无法从任何答案或搜索结果中得到解决方案。 我必须尽快解决这个问题.. 我正在尝试从用户输入的地址中获取纬度和经度,但我仍在继续获取:

java.io.IOException: Unable to parse response from server 

我正在使用此代码:

        Geocoder geocoder = new Geocoder(this ,Locale.getDefault());
        String newAddress = (String)saveas.getText().toString();
        List<Address> addresses = geocoder.getFromLocationName(newAddress, 1);

我尝试了很多不同的可能方法,但没有任何效果...... 默认地图应用程序运行良好,当用户输入地址时,它会在地图中成功显示该地址..我该怎么做呢..?

我已经添加了所有必需的权限,我正在真实设备上进行测试(2.3 版)...

【问题讨论】:

  • 这里的另存为 Edittext 是什么?
  • 是的,它是一个 EditText..
  • 你有没有试过在 Eclipse 中调试这个或者在 newAddress 上写一个日志来知道变量包含什么?
  • 以及您在其中输入的纬度/经度或任何地址?顺便说一句,当没有与您输入的地址匹配的结果时会发生这种情况
  • @saurabh: 城市名称,如孟买,那格浦尔

标签: android google-maps reverse-geocoding google-geocoder


【解决方案1】:

您是否尝试过 3G 连接?我注意到,如果您从 wifi 发送多个反向地理定位请求,您的 IP 会在一段时间后被阻止,并且反向地理定位在一段时间内不会响应。当我遇到类似问题时,切换到 3G 使请求对我有用。

【讨论】:

    【解决方案2】:

    我的三星 Galaxy Tab 10.1 遇到了同样的问题。我在几个小时内寻找解决方案,但没有任何帮助。要解决问题,请尝试以下操作:

    进入位置设置并启用:

    1.使用无线网络 2.使用GPS卫星

    等待 GPS 定位修复

    此后,地理编码器服务器开始响应。即使我禁用了无线和 GPS 定位,服务器仍在工作。我认为只有在您与 Google 分享您的位置时才能使用地理编码器。

    【讨论】:

      【解决方案3】:

      我解决了更改上下文的相同问题。

      我用的是Fragment,所以我的代码是这样的

          public class SearchRoteFragment extends Fragment{
      
              @Override
          public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
              View rootView = inflater.inflate(R.layout.teste_mapa, container, false);
              context = getActivity();
      ...
      }
      

      当我调用地理编码时,我会这样做

      Geocoder geoCoder = new Geocoder(context, Locale.getDefault());
      

      【讨论】:

        【解决方案4】:

        如果您在创建 Geocoder 时设置了 locale 参数可能会很有用:

        yourGeocoder = new Geocoder(this, Locale.CANADA); 
        

        请将第二个参数替换为最佳值。

        我猜默认的语言环境值可能与您使用的地图区域不对应。

        【讨论】:

          【解决方案5】:

          我不知道它是否有帮助 BTW 下面是我项目中的 sn-p 工作正常修改它以满足您的需要

          String newAddress = saveas.getText().toString();
          searchFromLocationName(newAddress);
          
          
          private void searchFromLocationName(String name){
           try {
            List<Address> result
            = myGeocoder.getFromLocationName(name, MAX_RESULT);
          
            if ((result == null)||(result.isEmpty())){
             Toast.makeText(AndroidgetFromLocationNameActivity.this,
               "No matches were found or there is no backend service!",
               Toast.LENGTH_LONG).show();
            }else{
          
             MyArrayAdapter adapter = new MyArrayAdapter(this,
                   android.R.layout.simple_list_item_1, result);
             listviewResult.setAdapter(adapter);
          
             Toast.makeText(AndroidgetFromLocationNameActivity.this,
               "Finished!",
               Toast.LENGTH_LONG).show();
            }
          
          
           } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Toast.makeText(AndroidgetFromLocationNameActivity.this,
              "The network is unavailable or any other I/O problem occurs!",
              Toast.LENGTH_LONG).show();
           }
          }
          

          【讨论】:

            【解决方案6】:

            可能您的手机未连接,无法从服务器检索答案。

            正如here地理编码器所解释的那样

            throws IOException if the network is unavailable or any other I/O problem occurs
            

            【讨论】:

              【解决方案7】:

              我在 Android 2.3.4 上进行测试,收到“无法解析来自服务器的响应”异常。

              确保您的谷歌地图正常工作,我的不工作!一旦谷歌地图开始工作地理编码器 很好。

              我确实从“位置和安全”设置中切换了“使用无线网络”和“使用 GPS 卫星”。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2011-10-08
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2013-08-05
                • 1970-01-01
                • 2012-05-25
                • 2019-10-17
                相关资源
                最近更新 更多