2013-02-09 18 views
0

我正在使用地理編碼轉換地址中的緯度和經度值。 這不是返回true()。如何使地理編碼器可行? 我是否需要爲地理編碼器實施備份服務?如果是,如何?android中的地理編碼器後端服務實現

public String convert_address(){  
String address=" :: predefine address ::"; 

    try{ 
     Geocoder geocoder1; 

    latitude = location.getLatitude(); 

    longitude = location.getLongitude(); 

    List<Address> addresses; 

    geocoder1 = new Geocoder(mContext, Locale.getDefault()); 
    address=" geo enter"; 


    addresses = geocoder1.getFromLocation(latitude, longitude, 2); 
    if(geocoder1.isPresent()==true) 
     //Toast.makeText(getApplicationContext(), "it is present....", 500).show(); 
    address="...... present......"; 
     else 
     //Toast.makeText(getApplicationContext(),"it is not....",500).show(); 
    address="....not present...."; 
    if(addresses != null) { 
     Address returnedAddress = addresses.get(0); 
     StringBuilder strReturnedAddress = new StringBuilder("Address:\n"); 
     for(int i=0; i<returnedAddress.getMaxAddressLineIndex(); i++) { 
     strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n"); 
     } 
     address=strReturnedAddress.toString(); 
     } 
     else{ 
     address="No Address returned!"; 
     } 



    } 
    catch(Exception e) 
    { 
     e.printStackTrace(); 
    } 
    return address; 
} 

回答

-1

公共靜態布爾isPresent()

返回true如果地理編碼方法getFromLocation和 getFromLocationName實現。 缺少網絡連接可能 仍會導致這些方法返回空列表或空列表。

+1

但在模擬器如果我們通過虛擬的經度和緯度 – 2013-02-14 07:27:11

+0

WHT是一個選項,從thissssss – 2013-02-14 07:38:05

+0

看看這些線克服它也返回null:http://code.google.com/p/android/問題/細節?id = 8816 – 2013-02-14 09:34:31