地理位置 android 定位的幾種方式介紹

2021-09-01 15:38:25 字數 3802 閱讀 6421

[複製鏈結]

nei511896752

367主題4

聽眾1480

積分

管理員

電梯直達

樓主

|只看該作者

|倒序瀏覽

www.androidkaifa.com,

安卓開發網

開發中對於地圖及地理位置的定位是我們經常要用地,

地圖功能的使用使得我們應用功能更加完善,下面 

www.androidkaifa.com 總結了一下網路中現有對於介紹android定位的幾種方式,希望對大家有幫助:

android 定位一般有四種方法,這四種方式分別是:gps定位,wifi定準,基站定位,agps定位,

(1

android gps:需要gps硬體支援,直接和衛星互動來獲取當前經緯度,這種方式需要手機支援gps模組(現在大部分的智慧型機應該都有了)。通過gps方式準確度是最高的,但是它的缺點也非常明顯:1,比較耗電;2,絕大部分使用者預設不開啟gps模組;3,從gps模組啟動到獲取第一次定位資料,可能需要比較長的時間;4,室內幾乎無法使用。這其中,缺點2,3都是比較致命的。需要指出的是,gps走的是衛星通訊的通道,在沒有網路連線的情況下也能用。

要實用adnroid平台的gps裝置,首先需要新增上許可權,所以需要新增如下許可權:  

具體實現**如下:

首先判斷gps模組是否存在或者是開啟:

private voidopengpssettings()  

toast.maketext(this, "請開啟gps!",toast.length_short).show();

intent intent = newintent(settings.action_security_settings);

startactivityforresult(intent,0); //此為設定完成後返回到獲取介面

}

如果開啟正常,則會直接進入到顯示頁面,如果開啟不正常,則會進行到gps設定頁面:

獲取**如下:

private voidgetlocation()

到這裡就可以獲取到地理位置資訊了,但是還是要顯示出來,那麼就用下面的方法進行顯示:

**

private voidupdatetonewlocation(location location) else

}

(2

android 基站定位:

android 基站定位只要明白了基站/wifi定位的原理,自己實現基站/wifi定位其實不難。基站定位一般有幾種,第一種是利用手機附近的三個基站進行三角定位,由於每個基站的位置是固定的,利用電磁波在這三個基站間中轉所需要時間來算出手機所在的座標;第二種則是利用獲取最近的基站的資訊,其中包括基站 id,location area code、mobile country code、mobile network code和訊號強度,將這些資料傳送到google的定位web服務裡,就能拿到當前所在的位置資訊,誤差一般在幾十公尺到幾百公尺之內。其中訊號強度這個資料很重要,

這裡筆者就不多做解釋了,直接給出乙個文章,這個文章寫的非常好,

(3

android wifi定位:根據乙個固定的wifimac位址,通過收集到的該wifi熱點的位置,然後訪問網路上的定位服務以獲得經緯度座標。因為它和基站定位其實都需要使用網路,所以在android也統稱為network方式。

**:

public classwifiinfomanager implements serializable

public wifiinfo getwifiinfo()

public class wifiinfo

}

}

上面是取到wifi的mac位址的方法,下面是把位址傳送給google伺服器,**如下

agps定位:agps(assistedgps:輔助全球衛星定位系統)是結合gsm或gprs與傳統衛星定位,利用基地臺代送輔助衛星資訊,以縮減gps晶元獲取衛星訊號的延遲時間,受遮蓋的室內也能借基地臺訊號彌補,減輕gps晶元對衛星的依賴度。和純gps、基地臺三角定位比較,agps能提供範圍更廣、更省電、速度更快的定位服務,理想誤差範圍在10公尺以內,日本和美國都已經成熟運用agps於lbs服務(location based service,基於位置的服務)。agps技術是一種結合了網路基站資訊和gps資訊對移動臺進行定位的技術,可以在gsm/gprs、wcdma和cdma2000網路中使進行用。該技術需要在手機內增加gps接收機模組,並改造手機的天線,同時要在流動網路上加建位置伺服器、差分gps基準站等裝置。agps解決方案的優勢主要體現在其定位精度上,在室外等空曠地區,其精度在正常的gps工作環境下,可以達到10公尺左右,堪稱目前定位精度最高的一種定位技術。該技術的另一優點為:首次捕獲gps訊號的時間一般僅需幾秒,不像gps的首次捕獲時間可能要2~3分鐘

Android 地理位置定位

android官方提供的定位sdk 1.先在manifest.xml中申請許可權 targetsdkversion 為23或者更高的需要動態申請許可權 android name android.permission.access fine location android name android....

android獲取地理位置資訊

移動應用可以通過gps或者網路的方式獲取當前位置資訊,一般來說,通過gps獲得地理位置往往精確度較高,但是在通訊條件不好的地方可能獲取不到,而通過網路資訊獲取地理位置精度低於gps,但是只要網路通暢,即可保證能獲取到地理位置資訊 想獲取地理位置資訊,首先要在androidmanifest.xml中加...

洋山港 地理位置

洋山港區位於浙江省嵊泗縣境內。由大洋山港口區和小洋山港口區組成。可供開發的深水岸線4900公尺,是上海國際航運中心的深水港區。位於嵊泗海域西部大洋山島的北岸。東北距縣城21.41海浬,西北距上海市蘆潮港18.9海浬。大洋山島海岸線總長16697公尺 其中基岩10214公尺 可利用岸線3200公尺,聖...