淺析Android手機(jī)衛(wèi)士手機(jī)定位的原理
推薦閱讀:
深入淺析Android手機(jī)衛(wèi)士保存密碼時(shí)進(jìn)行md5加密
詳解Android 手機(jī)衛(wèi)士設(shè)置向?qū)ы?yè)面
淺析Android手機(jī)衛(wèi)士關(guān)閉自動(dòng)更新
淺析Android手機(jī)衛(wèi)士自定義控件的屬性
淺析Android手機(jī)衛(wèi)士讀取聯(lián)系人
淺析Android手機(jī)衛(wèi)士接收短信指令執(zhí)行相應(yīng)操作
手機(jī)定位的三種方式:網(wǎng)絡(luò)定位,基站定位,GPS定位
網(wǎng)絡(luò)定位,手機(jī)連上wifi 2g 3g的時(shí)候,手機(jī)會(huì)有一個(gè)ip,誤差很大
基站定位,精確度與基站的多少有關(guān),幾十米到幾公里的誤差
GPS定位,至少需要三顆衛(wèi)星才能定位,在空曠的地方準(zhǔn)確
手機(jī)使用A-GPS需要網(wǎng)絡(luò)來(lái)輔助定位,定位速度快,網(wǎng)絡(luò)記錄了上次的衛(wèi)星軌道,
獲取LocationManager對(duì)象,通過(guò)getSystemService(LOCATION_SERVICE)
調(diào)用LocationManager對(duì)象的requestLocationUpdates()方法,請(qǐng)求位置更新,參數(shù):
定位方式(“gps”),更新時(shí)間(60000),更新距離(50),LocationListener對(duì)象
LocationListener是一個(gè)接口,需要做它的實(shí)現(xiàn)類
定義MyLocationListener實(shí)現(xiàn)LocationListener,實(shí)現(xiàn)它下面的方法
onLocationChanged(),當(dāng)位置改變的時(shí)候回調(diào),傳遞進(jìn)來(lái)一個(gè)Location對(duì)象
調(diào)用location對(duì)象的getLongitude()方法,得到經(jīng)度
調(diào)用Location對(duì)象的getLatitude()方法,得到維度
調(diào)用Location對(duì)象的getAccuracy()方法,得到精確度
onStatusChanged(),當(dāng)狀態(tài)改變的時(shí)候回調(diào),關(guān)閉 開(kāi)啟
onProviderEnabled(),當(dāng)某一個(gè)位置提供者可用了
onProviderDisabled(),當(dāng)某一個(gè)位置提供者不可用了
當(dāng)activity銷毀的時(shí)候,取消監(jiān)聽(tīng)位置
重寫activity的onDestroy()方法
調(diào)用LocationManager對(duì)象的removeUpdates(),取消監(jiān)聽(tīng),參數(shù):LocationListener對(duì)象
把LocationListener對(duì)象置為null,垃圾回收
需要的權(quán)限
android.permission.ACCESS_FINE_LOCATION 獲取精準(zhǔn)位置
android.permission.ACCESS_COARSE_LOCATION 獲取粗略的位置
android.permission.ACCESS_MOCK_LOCATION 獲取模擬的位置(模擬器開(kāi)發(fā)的時(shí)候)
模擬器上,ddms里面發(fā)送以下位置,才能顯示
國(guó)家對(duì)坐標(biāo)進(jìn)行了加偏處理,變成火星坐標(biāo),需要國(guó)家測(cè)繪局的插件,網(wǎng)上有火星坐標(biāo)轉(zhuǎn)換代碼
package com.tsh.mylocation; import android.app.Activity; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; public class MainActivity extends Activity { private LocationManager lm; private LocationListener listener; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //獲取位置管理器 lm=(LocationManager) getSystemService(LOCATION_SERVICE); listener=new MyLocationListener(); lm.requestLocationUpdates("gps", 0, 0, listener); } private class MyLocationListener implements LocationListener{ @Override public void onLocationChanged(Location location) { //獲取經(jīng)度 String longitude="經(jīng)度:"+location.getLongitude(); String latitude="緯度:"+location.getLatitude(); String acc="精確度:"+location.getAccuracy(); Toast.makeText(MainActivity.this, longitude+latitude+acc, 1).show(); } @Override public void onStatusChanged(String provider, int status, Bundle extras) { } @Override public void onProviderEnabled(String provider) { } @Override public void onProviderDisabled(String provider) { } } }
以上所述是小編給大家介紹的Android手機(jī)衛(wèi)士手機(jī)定位的原理,希望對(duì)大家有所幫助!
- Android編程實(shí)現(xiàn)號(hào)碼歸屬地查詢的方法
- Android手機(jī)號(hào)碼歸屬地的查詢
- 淺析Android手機(jī)衛(wèi)士自定義控件的屬性
- 淺析Android手機(jī)衛(wèi)士關(guān)閉自動(dòng)更新
- 詳解Android 手機(jī)衛(wèi)士設(shè)置向?qū)ы?yè)面
- 深入淺析Android手機(jī)衛(wèi)士保存密碼時(shí)進(jìn)行md5加密
- 淺析Android手機(jī)衛(wèi)士sim卡綁定
- 淺析Android手機(jī)衛(wèi)士讀取聯(lián)系人
- 淺析Android手機(jī)衛(wèi)士保存手機(jī)安全號(hào)碼
- 淺析Android手機(jī)衛(wèi)士接收短信指令執(zhí)行相應(yīng)操作
- 淺析Android手機(jī)衛(wèi)士之手機(jī)實(shí)現(xiàn)短信指令獲取位置
- 淺析Android 手機(jī)衛(wèi)士設(shè)備管理權(quán)限鎖屏
- 淺析Android手機(jī)衛(wèi)士之號(hào)碼歸屬地查詢
相關(guān)文章
Android用StaticLayout實(shí)現(xiàn)文字轉(zhuǎn)化為圖片效果(類似長(zhǎng)微博發(fā)送)
這篇文章主要給大家介紹了關(guān)于Android利用StaticLayout實(shí)現(xiàn)文字轉(zhuǎn)化為圖片效果,實(shí)現(xiàn)的效果類似我們常見(jiàn)的長(zhǎng)微博效果,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-08-08Android開(kāi)心消消樂(lè)代碼實(shí)例詳解
這篇文章主要介紹了Android開(kāi)心消消樂(lè)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05Android開(kāi)發(fā)新手常見(jiàn)的10個(gè)誤區(qū)
這篇文章主要介紹了Android開(kāi)發(fā)新手常見(jiàn)的10個(gè)誤區(qū),我們?nèi)匀豢吹搅四男┬碌腁ndr​​oid開(kāi)發(fā)人員不斷重復(fù)的錯(cuò)誤,這里有10個(gè)最常見(jiàn)的誤區(qū),需要的朋友可以參考下2015-03-03android之BroadcastReceiver應(yīng)用詳解
這篇文章主要介紹了android之BroadcastReceiver應(yīng)用詳解,BroadcastReceiver也就是“廣播接收者”的意思,顧名思義,它就是用來(lái)接收來(lái)自系統(tǒng)和應(yīng)用中的廣播。有興趣的可以了解一下。2016-12-12