我是Android新手。我開發了一個必須顯示當前位置名稱的應用程序。我試圖使用Geocoder類。但它似乎在某些電話顯示正確的位置,但在一些它顯示任何位置並變空。Android地理編碼問題
我的代碼是在這裏,
Geocoder geocoder = new Geocoder(getActivity(), Locale.getDefault());
List<Address> listAddresses = null;
try {
listAddresses = geocoder.getFromLocation(gps.getLatitude(), gps.getLongitude(), 1);
} catch (IOException e) {
e.printStackTrace();
}
if (null != listAddresses && listAddresses.size() > 0) {
Location = "";
for (int i = 0; i < 4; i++) {
if (listAddresses.get(0).getAddressLine(i) != null) {
Location += listAddresses.get(0).getAddressLine(i) + ",";
}
}
Log.e("Location", Location);
}
我Manifest類,
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
我不明白是什麼問題?它取決於不同的設備?或者其他原因?
可能的複製http://stackoverflow.com/questions/4761052/why-is-android-geocoder-throwing-a-service-not-available-exception – Brendon
你可以檢查,如果你是否獲取當前位置的經緯度以及日誌中是否有錯誤或異常? –
是的,我得到拉特和長期適當.. –