2010-01-18 7 views
6

Aşağıdaki kod, 1.5, 1.6 ve 2.0'de çalışan ve 2.1 üzerinde çalışan öykünücüsü çalıştıran gerçek aygıtlar için mükemmel çalışır. Bir (2.1 çalıştıran) Nexus bunu yürütme AncakAndroid: Nexus One - Geocoder IOException neden olur - diğer aygıtlar ve emülatörlerle mükemmel çalışır

, bir IOException yükseltir:

Double myLatitude = AppObject.myLocation.getLatitude(); 
Double myLongitude = AppObject.myLocation.getLongitude(); 
DEBUG.i(TAG, "My location: " + myLatitude + " | " + myLongitude); 
Geocoder geocoder = new Geocoder(MainActivity.this); 
java.util.List<Address> addressList; 
try { 
    addressList = geocoder.getFromLocation(myLatitude, myLongitude, 5); 
    if(addressList!=null && addressList.size()>0) { 
     currentAddress = new String(); 
     DEBUG.i(TAG,addressList.get(0).toString()); 
     currentAddress = addressList.get(0).getAddressLine(0) + ", " 
     + addressList.get(0).getAddressLine(1) + ", " 
     + addressList.get(0).getAddressLine(2); 

    } 
    return true; 

} catch (IOException e) { 
    e.printStackTrace(); 
    return false; 
} 
+1

Yazdığım bir uygulamada neredeyse tam olarak aynı koda sahibim ve Nexus One cihazımda sorunsuz çalışıyor. Coğrafi kodu çağırdığınızda Nexus One'ın internet bağlantısı olmadığı gibi, belirli bir şeye daraltmak mümkün mü? –

+0

Manifatmanınızda var mı? – haseman

+0

Her nasılsa şimdi çalışıyor. Kodumda veya Nexus One'da herhangi bir değişiklik yapmadan. Ürpertici. haseman: ACCESS_COARSE_LOCATION ve ACCESS_FINE_LOCATION cihazlarını kullanıyorum, ancak şu adresteki android.permission.LOCATION belgesini bulamadınız: http://developer.android.com/intl/fr/reference/android/Manifest. allow.html – znq

cevap

1

Merhaba ben aynı sorunu düştü: gerçekleşmeden kod snippet'ine

java.io.IOException: Unable to parse response from server 
at android.location.Geocoder.getFromLocation(Geocoder.java:124) 

ve aynı durum. Nexus One'ım var ve addressList = geocoder.getFromLocation(myLatitude, myLongitude, 1); çalışması yapmak için bir çözüm buldum. Sadece cihazınızı yeniden başlatmanız gerekiyor. Fark ettiğim şey, Geocoder'ın getFromLocation yönteminin Locale ayarlarındaki herhangi bir değişiklikten haberdar olmamasıdır (benim durumumda, yöntemin çalışmamasını durduran şey varsayılan yerel ayarımın değişmesiydi). Yeniden başlatmanın ardından her şey çalıştı. Bunun için herkesin makul bir nedeni var mı? (Kelime oyunu için üzgünüm: -P)

0

HTC Tmobile G2 kullanıyorum ve GeoCoder tabanlı bir özelliği test ederken aynı problemi yaşadım. Bir yeniden başlatma yardımcı oldu, ancak müşterilerim bundan şikâyet etmeye başladığında kabul edilebilir bir çözüm değil. Bu bir çeşit önbellek temizleme sorunuysa, umarım programlı olarak bir geçici çözüm devreye sokulabilir.

İlgili konular