相关疑难解决方法(0)

服务不可用 - Geocoder Android

我对地理编码器有一点问题是从地址获取纬度和纬度:

这是我的代码:

for (Garage g : XMLGarage) {
List<Address> address;
address = coder.getFromLocationName(
g.getAddress(), 5);
if (address != null) {
Address location = address.get(0);  
g.setLatitude(location.getLatitude());
g.setLongitude(location.getLongitude());
...
Run Code Online (Sandbox Code Playgroud)

错误是:

08-18 14:28:56.026: WARN/System.err(359): java.io.IOException: Service not Available
08-18 14:28:56.026: WARN/System.err(359):     at 
android.location.Geocoder.getFromLocationName(Geocoder.java:178)
08-18 14:28:56.026: WARN/System.err(359):     at 
com.amt.android.garage.Garage.postData(Garage.java:269)
08-18 14:28:56.026: WARN/System.err(359):     at
com.amt.android.garage.GarageForm$2.onClick(GarageForm.java:86)
08-18 14:28:56.026: WARN/System.err(359):     at  
android.view.View.performClick(View.java:2485)
08-18 14:28:56.026: WARN/System.err(359):     at
android.view.View$PerformClick.run(View.java:9080)
08-18 14:28:56.036: WARN/System.err(359):     at  
android.os.Handler.handleCallback(Handler.java:587)
08-18 14:28:56.036: WARN/System.err(359):     at
android.os.Handler.dispatchMessage(Handler.java:92)
08-18 14:28:56.036: WARN/System.err(359):     at
android.os.Looper.loop(Looper.java:130)
08-18 14:28:56.036: WARN/System.err(359):     at 
android.app.ActivityThread.main(ActivityThread.java:3683) …
Run Code Online (Sandbox Code Playgroud)

android google-geocoder

45
推荐指数
2
解决办法
5万
查看次数

android java.io.IOException:服务不可用

描述:我正在使用Google maps API V2.我已Android Reverse Geocoding在触摸位置实施.

问题:它抛出异常

 try {
     addresses = geocoder.getFromLocation(latitude, longitude,1);}
 catch (IOException e)
     {
     e.printStackTrace();
     if(AppConstants.DEBUG)Log.v(AppConstants.DEBUG_TAG," e.printStackTrace(): "+e.getMessage());
     }
Run Code Online (Sandbox Code Playgroud)

我收到latitude并且longitude价值正确,但我无法理解为什么它会抛出exception,我也做了谷歌搜索,但它无能为力.

任何人都可以详细解释一下吗?

android google-maps-android-api-2

35
推荐指数
3
解决办法
3万
查看次数

调用geoCoder.getFromLocation()时服务不可用

我知道有时google后端服务可能无法使用.

因此,解决方案可能是循环,直到我获得数据.

private class getLocationDetails extends AsyncTask<String, Void, String> {

    @Override
    protected String doInBackground(String... params) {

        Log.d("looping", "" + count + "");
        count++;
        double lat = Double.parseDouble(params[0]);
        double lng = Double.parseDouble(params[1]);
        List<Address> addresses = null;
        try {

            Geocoder gCoder = new Geocoder(ImageAndLocationActivity.this,
                    Locale.getDefault());
            addresses = gCoder.getFromLocation(lat, lng, 1);
            Address addr = addresses.get(0);
            user_country = addr.getCountryName();
            user_city = addr.getLocality();
            user_district = addr.getSubAdminArea();

            if (user_city == null) {

                user_city = user_district;
            }
        } catch (Exception e) {

            Log.e("Exception in getLocationDetails - ", …
Run Code Online (Sandbox Code Playgroud)

android google-geocoder

28
推荐指数
3
解决办法
5万
查看次数

服务在geoCoder中不可用

我能够得到经度和纬度,但得到地址我得到了一个错误.

public boolean onTouchEvent(MotionEvent事件,MapView mapView)

{

  if(event.getAction()==0)

   {

GeoPoint p = mapView.getProjection().fromPixels(

  (int) event.getX(),

  (int) event.getY());


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

 try

   {

   List<Address> address = geoCoder.getFromLocation( p.getLatitudeE6() / 1E6,
                            p.getLongitudeE6() / 1E6, 1);

    String add="";

       if(address.size()>0)

          {

              for (int i=0; i<address.get(0).getMaxAddressLineIndex();i++)

        add += address.get(0).getAddressLine(i) + "\n";

          }

    Toast.makeText(getBaseContext(), add, Toast.LENGTH_SHORT).show();

            } catch (IOException e) 

            {   

                e.printStackTrace();

            }

            return true;    

        }

        return false;
Run Code Online (Sandbox Code Playgroud)

}

我的Logcat - >

02-14 12:27:35.717: WARN/System.err(452): java.io.IOException: Service not Available
02-14 12:27:35.727: WARN/System.err(452):     at android.location.Geocoder.getFromLocation(Geocoder.java:117)
02-14 12:27:35.727: WARN/System.err(452): …
Run Code Online (Sandbox Code Playgroud)

gps android

11
推荐指数
1
解决办法
1万
查看次数

Android Geocoder.getLocationFromName()抛出IOException:服务在Device上不可用

我在模拟器和我的手机(带有Android 4.1的Nexus S)上使用Geocoder.getLocationFromName()方法,我得到以下异常:

java.io.IOException: Service not Available
Run Code Online (Sandbox Code Playgroud)

关于这个问题有很多问题出现在模拟器上(示例),并且大多数人都说这是模拟器的特定版本存在问题.但是,我的AVD(2.3和4.1)和我的手机都出现了异常.

我的手机和AVD都有互联网连接.我的API版本是16(android 4.1),但我也尝试过较旧版本.两种AVD都包含Google API.

有什么想法在这里发生了什么?

这是相关的代码段:

Geocoder myGeocoder = new Geocoder(getApplicationContext(), Locale.getDefault());
List<Address> newAddresses = myGeocoder.getFromLocationName(arg0.toString(), 10);
Run Code Online (Sandbox Code Playgroud)

这是我的表现:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.asdasd" android:versionCode="6" android:versionName="1.3.1">
    <uses-sdk android:minSdkVersion="16" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <application android:icon="@drawable/ic_launcher_asdasd"
        android:label="@string/app_name">
        <activity android:name=".AsdasdActivity" android:label="@string/app_name"
            android:screenOrientation="portrait" android:windowSoftInputMode="stateHidden">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.google.ads.AdActivity"
            android:configChanges="keyboard|keyboardHidden|orientation" />
    </application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

android geocoding geolocation

6
推荐指数
1
解决办法
4831
查看次数

谷歌地理编码器服务是不可用的(协调员要解决)

我必须通过坐标获得一个地址,但它不起作用并输出"无法获取地址":

public String GetAddress(String lat, String lon)
        {
            Geocoder geocoder = new Geocoder(this, Locale.ENGLISH);
            String ret = "";
            try {
                List<Address> addresses = geocoder.getFromLocation(Double.parseDouble(lat), Double.parseDouble(lon), 1);
                if(addresses != null) {
                    Address returnedAddress = addresses.get(0);
                    StringBuilder strReturnedAddress = new StringBuilder("");
                    for(int i=0; i<returnedAddress.getMaxAddressLineIndex(); i++) {
                        strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n");
                    }
                    ret = strReturnedAddress.toString();
                    ret=ret.substring(0, ret.length() - 1);
                }
                else{
                    ret = "Unknown Address";
                }
            }
            catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                ret = "Couldn't get Address";
            }
            return ret;
        } …
Run Code Online (Sandbox Code Playgroud)

service android coordinates street-address google-geocoder

5
推荐指数
1
解决办法
6117
查看次数

Android:java.io.IOException:Android Geocoder.getFromLocation() 时服务不可用

我有通话问题:

Geocoder geocoder = new Geocoder(ctx, Locale.getDefault());
List<Address> data = geocoder.getFromLocation(latitude, longitude, 1);
Run Code Online (Sandbox Code Playgroud)

抛出异常:

java.io.IOException: Service not Available
W/System.err:     at android.location.Geocoder.getFromLocation(Geocoder.java:136)
W/System.err:     at <path to my class>.getGeolocationName(GPSTracker.java:325)
Run Code Online (Sandbox Code Playgroud)

Nexus 5
Android 7.1.1 来自xda
Google 应用程序(Gapps),从“Aroma”变体从这里安装。Google Play、Google 服务会自动安装。我添加了谷歌地图,谷歌软件包安装程序。

重新启动设备不能解决问题,因为问题是关于缺少包 i 的事情。

更新
如果 Geocoder 不可用,我使用 e Geocoding API:示例
来自此处:“ Geocoder 是 Google API 附加组件的一部分,不属于 AOSP。 ”我可以安装它吗?

android google-maps

5
推荐指数
1
解决办法
3999
查看次数

使用json获取当前位置

嗨,我写了一个应用程序,获取当前的纬度和经度,并将其转换为corrsponding address.i可以获得lattitude和longitutde但如何使用json将其转换为相应的地址.我是json的新手.我尝试了一些示例代码但没有获取地址

这是我的代码

import java.io.IOException;
import java.util.List;
import java.util.Locale;

import android.content.Context;
import android.location.Address;
import android.location.Geocoder;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;

import com.google.android.gms.maps.CameraUpdate;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.CameraPosition;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.LatLngBounds;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.maps.GeoPoint;



public class GMapActivity extends FragmentActivity {
private GoogleMap map;


       @Override

       protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_map);
              LocationManager locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

              LocationListener locListener = new GpsActivity(getBaseContext());
        locManager.requestLocationUpdates( …
Run Code Online (Sandbox Code Playgroud)

android json geolocation reverse-geocoding google-maps-api-2

2
推荐指数
1
解决办法
9958
查看次数

android geocoder api 10服务不可用

Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.ENGLISH);
try {
    List<Address> addresses =  geocoder.getFromLocation(lat,lon, 1); <--Exception
Run Code Online (Sandbox Code Playgroud)

此代码导致异常服务不可用.谁能帮我?我已经读过它是A 2.2的一个bug,api 10是A 2.3.3所以从理论上说它应该可行.

java android google-maps

1
推荐指数
1
解决办法
2486
查看次数