2016-07-27 66 views
0

我有地理編碼器函數的「null」結果。我使用地理編碼器顯示latitide &經度的地址。這是我的代碼項目的一部分。 如何固定?「null」地理編碼器的結果

goecoder代碼:

public void getMyLocationAddress() { 
    Geocoder geocoder= new Geocoder(this, Locale.ENGLISH); 
    try {  
      //Place your latitude and longitude 
      List<Address> addresses = geocoder.getFromLocation(latMosque,lonMosque, 1); 

     if(addresses != null) { 

       Address fetchedAddress = addresses.get(0); 
       StringBuilder strAddress = new StringBuilder(); 

       for(int i=0; i<fetchedAddress.getMaxAddressLineIndex(); i++) { 
        strAddress.append(fetchedAddress.getAddressLine(i)).append("\n"); 
       }   
      lokasi ="lokasi : "+strAddress.toString(); 

      } 
      else 
      lokasi = "lokasi tidak ditemukan"; 
    } 
    catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      Toast.makeText(getApplicationContext(),"Could not get address..!", Toast.LENGTH_LONG).show(); 
    } 
} 

代碼顯示,使用帆布,而不是XML ..

protected void onDraw(Canvas canvas) { 
    Paint paint = mPaint; 
    Paint paint5 =mPaint; 
    paint5.setTextSize(20); 
    paint5.setColor(Color.RED); 

    canvas.drawText("Alamat : "+ lokasi , 50, 100, paint5); 
} 
+0

你*總是*爲空嗎? – Hulk

+0

是的。緯度和經度自動檢測。 –

回答

0

我假設你正在使用android.location.Geocoder。從文檔引用:

如果找不到匹配項或者沒有後端服務可用,則返回空列表或空列表。

因此,也許您的後端服務不可用 - 或者您位於它沒有數據的位置。

相關問題