2011-08-24 89 views
0

如果我使用Android的地理編碼器檢查地址是否爲機場?

Geocoder geocoder = new Geocoder(context, Locale.getDefault()); 
List<Address> addresses = geocoder.getFromLocationName(addressName, 3); 

我如何檢查是否一個地址是機場(或沒有)?因爲沒有這樣的方法地址類

我想是這樣

Address address = addresses[0]; 
address.isAirport(); 

我是被迫使用classis Geocoding API並做解析等..?因爲根據地址組件類型我看到一個項目

機場指示機場。

+0

根據getFeatureName返回的內容,您可能可以執行類似if(address.getFeatureName()。toLower()。contains(「airport」))(僞代碼)) – 0x5f3759df

+0

請參閱下面的註釋。如果保證總是提到「機場」一詞(如果地址是機場),那麼這就是解決方案。 – svenkapudija

回答

2

您可以查看地址。 getFeatureName。不過你必須自己去尋找字符串「機場」。

+0

我想到了這一點,但我不確定單詞「airport」是否會一直包含在該參數中。如果有的話,那麼沒有問題... – svenkapudija

+0

你應該能夠測試這個。只需將模擬器的位置設置爲各個機場的座標,並查看返回的值即可。 – elevine

-1

我從來沒有使用過這一點,但如果犯規存在的功能,你需要創建它。美國很多機場都沒有。抓住他們的地理座標,將它們插入到表格或數組中並循環使用它將非常簡單。

所以如果地址在你的名單中,那麼它的機場。

類adresss {

雙陣列= {0.00,0.00,0.00}

通過陣列 檢查循環,如果是會有地理座標的陣列中, 如果是返回true; }