位置服務與地圖應用:
位置服務(Location Based Services,LBS)又稱為服務或基于位置的服務。Andorid平台支援提供位置服務的API,在開發過程中主要用到LocationManager 和LocationProviders對象。
為開發能夠提供位置服務,首先需要得到LocationManager對象,擷取方法如下:
String serviceString = Context.LOCATION_SERVICE;
LocationManager locationManager = (LocationManager)getSystemService(serviceString);
以上代碼第二行函數,可以擷取Android提供的系統級服務。第一行指明的是擷取的服務是位置服務。
ANDROID支援的系統級服務如下:
LOCATION_SERVICE:控件位置等服務
WINDOW_SERVICE:最頂層的視窗管理器
LAYOUT_INFLATER_SERVICE:将XML資源執行個體化為VIEW
POWER_SERVICE:電源管理
ALARM_SERVICE:在指定時間接受INTENT
NOTIFICATION_SERVICE:背景事件通知
KEYGUARD_SERVICE:鎖定或解鎖鍵盤
SEARCH_SERVICE:通路系統的搜尋服務
VIBRATOR_SERVICE:通路支援振動的硬體
CONNECTIVITY_SERVICE:網絡連接配接管理
WIFI_SERVICE:Wi-Fi連接配接管理
INPUT_METHOD_SERVICE:輸入法管理
在擷取到LocationManager後, 還需要指定LocationManager的定位方法,然後才能夠調用 LocationManager.getLastKnowLocation()方法擷取目前位置。目前LocationManager支援的定位方法有如下兩種:
1.GPS定位:可提供更加精确的位置資訊,但定位速度和品質受到衛星數量和環境情況的影響;
2.網絡定位:提供的位置資訊精度較差,但速度較GPS定位快,LocationManager支援定位方法如下表:
LocationManager
說明
GPS_PROVIDER
使用GPS定位,利用衛星提供精确的位置資訊,需要權限:
android.permissions.ACCESS_FINE_LOCATION使用者權限。
NETWORK_PROVIDER
使用網絡定位,利用基站 或WIFI提供挖的位置資訊,需要具有如下權限:
android.permissions.ACCESS_COARSE_LOCATION或
android.permission.ACCESS_FINE_LOCATION
模拟HTTP請求
HTTP請求有兩種方式:POST與GET方式
JAVA跟ANDROID中都用HttpURLConnection來解析使用HTTP請求,ANDROID中也是如此的。呵呵。。
POST方式送出:
<a target="_blank" href="http://blog.51cto.com/attachment/201112/195814667.png"></a>
<a target="_blank" href="http://blog.51cto.com/attachment/201112/195831155.png"></a>
通路網絡資料時應該在全局檔案中加個:可以通路INTERNET的權限哦,不然會報到 錯的。
在ANDROID中也可以通過HTTPClient來模拟HTTP請求哦,使用更友善的。
HttpClient http = new DefaultHttpClient();………………………HttpClient是一個接口哦.
<a target="_blank" href="http://blog.51cto.com/attachment/201112/195842243.png"></a>
本文轉自華華世界 51CTO部落格,原文連結:http://blog.51cto.com/mzh3344258/733375,如需轉載請自行聯系原作者