?
Ce document utilise Manuel du site Web PHP chinois Libérer
Geocoder
版本:Android 4.0 r1
結(jié)構(gòu)
繼承關(guān)系
public final class Geocoder extends Object
java.lang.Object
android.location.Geocoder
類概述
一個處理前向地理編碼和反向地理編碼的類。地理編碼是一個街道、地址或者其他位置(經(jīng)度、緯度)轉(zhuǎn)化為坐標(biāo)的過程。反向地理編碼是將坐標(biāo)轉(zhuǎn)換為地址(經(jīng)度、緯度)的過程。一組反向地理編碼結(jié)果間可能會有所差異。例如:一個結(jié)果可能包含最臨近建筑的完整街道地址,而另一個可能只包含城市名稱和郵政編碼。Geocoder要求的后端服務(wù)并沒有包含在基本的Android框架中。如果沒有此后端服務(wù),執(zhí)行Geocoder的查詢方法將返回一個空列表。使用isPresent()方法,以確定Geocoder是否能夠正常執(zhí)行。
公共構(gòu)造器
public Geocoder(Context context, Local local)
根據(jù)給定的語言環(huán)境構(gòu)造一個Geocoder對象。
參數(shù)
context 當(dāng)前的上下文對象。
local the 當(dāng)前語言環(huán)境
public Geocoder(Context context)
根據(jù)給定的系統(tǒng)默認(rèn)語言環(huán)境構(gòu)造一個Geocoder對象。
參數(shù)
context 當(dāng)前的上下文對象。
公共方法
public List<Address> getFromLocation(double latitude, double longitude, int maxResults)
根據(jù)給定的經(jīng)緯度返回一個描述此區(qū)域的地址數(shù)組。返回的地址將根據(jù)構(gòu)造器提供的語言環(huán)境進(jìn)行本地化。
返回值有可能是通過網(wǎng)絡(luò)獲取。返回結(jié)果是一個最好的估計值,但不能保證其完全正確。
參數(shù)
latitude 緯度
longitude 經(jīng)度
maxResults 要返回的最大結(jié)果數(shù),推薦1~5
返回值
一組地址對象。如果沒找到匹配項,或者后臺服務(wù)無效的話則返回null或者空序列。
異常
IllegalArgumentException 緯度小于-90或者大于90
IllegalArgumentException 果經(jīng)度小于-180或者大于180
IOException 如果沒有網(wǎng)絡(luò)或者IO錯誤
public List<Address> getFromLocationName(String locationName, int maxResults, double lowerLeftLatitude, double lowerLeftLongitude, double upperRightLatitude, double upperRightLongitude)
返回一個由給定的位置名稱參數(shù)所描述的地址數(shù)組。名稱參數(shù)可以是一個位置名稱,如:“Dalvik, Iceland”,一個地址,如:“1600 Amphitheatre Parkway, Mountain View, CA”,一個機(jī)場代號,如:“SFO”,等等……返回的地址將根據(jù)構(gòu)造器提供的語言環(huán)境進(jìn)行本地化。
你也可以指定一個搜索邊界框,該邊界框由左下方坐標(biāo)經(jīng)緯度和右上方坐標(biāo)經(jīng)緯度確定。
返回值有可能是通過網(wǎng)絡(luò)獲取。返回結(jié)果是一個最好的估計值,但不能保證其完全正確。通過UI主線程的后臺線程來調(diào)用這個方法可能更加有用。
參數(shù)
locationName 用戶提供的位置描述
maxResults 要返回的最大結(jié)果數(shù),推薦1~5
lowerLeftLatitude 左下角緯度,用來設(shè)定矩形范圍
lowerLeftLongitude 左下角經(jīng)度,用來設(shè)定矩形范圍
upperRightLatitude 右上角緯度,用來設(shè)定矩形范圍
upperRightLongitude 右上角經(jīng)度,用來設(shè)定矩形范圍
返回值
一組地址對象。如果沒找到匹配項,或者后臺服務(wù)無效的話則返回null或者空序列。
異常
IllegalArgumentException 如果位置描述為空
IllegalArgumentException 如果緯度小于-90或者大于90
IllegalArgumentException 如果經(jīng)度小于-180或者大于180
IOException 如果沒有網(wǎng)絡(luò)或者IO錯誤
public List<Address> getFromLocationName(String locationName, int maxResults)
返回一個由給定的位置名稱參數(shù)所描述的地址數(shù)組。名稱參數(shù)可以是一個位置名稱,如:“Dalvik, Iceland”,一個地址,如:“1600 Amphitheatre Parkway, Mountain View, CA”,一個機(jī)場代號,如:“SFO”,等等……返回的地址將根據(jù)構(gòu)造器提供的語言環(huán)境進(jìn)行本地化。
返回值有可能是通過網(wǎng)絡(luò)獲取。返回結(jié)果是一個最好的估計值,但不能保證其完全正確。
通過UI主線程的后臺線程來調(diào)用這個方法可能更加有用。
參數(shù)
locationName 用戶提供的位置描述
maxResults 要返回的最大結(jié)果數(shù),推薦1~5.
返回值
一組地址對象。如果沒找到匹配項,或者后臺服務(wù)無效的話則返回null或者空序列。
異常
IllegalArgumentException 如果位置描述為空
IOException 如果沒有網(wǎng)絡(luò)或者IO錯誤
public static boolean isPresent ()
如果Geocoder的getFromLocation和getFromLcationName都實現(xiàn)了則返回true,沒有網(wǎng)絡(luò)連接這些方法仍然可能返回空或者空序列。
補充
文章精選
Android地圖開發(fā)中的地理編碼與地理反編碼
Android地圖和定位學(xué)習(xí)總結(jié)