iOS 關(guān)于定位你該注意的那些事

其實扼仲,對于蘋果用戶而言远寸,定位的方案只有一種,那就蘋果自己的定位服務(wù)CoreLocation屠凶,因為蘋果定位不允許接入第三方驰后,百度地圖和高德地圖只是對蘋果定位服務(wù)的二次封裝,方便我們使用矗愧。

1.定位方式和定位原理

移動端定位就是三種:基站定位灶芝、WiFi定位、GPS定位唉韭。其實無論哪種定位监署,都是根據(jù)已知點位置信息來定位當(dāng)前位置,原理都是一樣的纽哥,只是精度、定位速度和耗電的差別栖秕。第一代iPhone只支持基站定位春塌,從iPhone3G開始支持GPS定位,準(zhǔn)確點說是AGPS簇捍,是GPS的加強版只壳。
??基站定位的特點就是速度快,誤差太大了暑塑,在幾百米到幾公里之間吼句。如果手機沒連WiFi,初次定位返回的位置信息基本上都是基站定位事格。因為每個基站都有唯一標(biāo)識符惕艳,蘋果手機可以收集到附近所有基站和他們的標(biāo)識符,把這些信息傳給蘋果云端服務(wù)器驹愚,返回給手機远搪,所以這種定位方式需要網(wǎng)絡(luò)。另外蘋果針對這個做了優(yōu)化逢捺,蘋果手機提前將一些重要的基站信息存儲在本地谁鳍,以便支持無網(wǎng)定位,當(dāng)然精度肯定不能保證了劫瞳,完全看你所在的區(qū)域蘋果是否存儲基站了倘潜。雖然這個很方便,但是對我們這個項目就很坑了志于。我們的App需要室內(nèi)的定位精度非常高涮因,使用聯(lián)通、電信卡的用戶有些時候信號不好(是信號不好恨憎,不是沒有)蕊退,蘋果自動執(zhí)行無網(wǎng)定位郊楣,定位出來的坐標(biāo)誤差特別大, 能達到一兩公里瓤荔,而且我們還沒有辦法自己改變定位方式净蚤,這就比較坑了。

WiFi定位和基站定位原理是相同的输硝,蘋果手機可以獲得周圍路由器或者AP的Mac地址今瀑,然后去蘋果的后臺根據(jù)Mac地址查詢路由器或者AP信息,通過計算得出當(dāng)前位置点把,返回給用戶橘荠,這說明了你的路由器或者AP的信息是存儲在蘋果后臺的,他們每天都收集這些信息郎逃。這個最早是由Skyhook公司發(fā)明的哥童,一開始蘋果也用他們的服務(wù),后來開始自己干了褒翰。WiFi定位速度很快贮懈,耗電介于基站定位和GPS之前,定位幾十米优训,很靠譜朵你。而且蘋果做了優(yōu)化,等你連了一個WiFi熱點之后揣非,蘋果會把周圍的熱點信息都下載下來抡医,至于下載熱點的范圍就看你周圍熱點密集度了,如果在市內(nèi)也就下載一條街的早敬,去熱點不密集的地方忌傻,范圍就會大一點。這有什么用搁嗓?用處大了芯勘。只要用戶打開WiFi,即使不連腺逛,也會提高定位精度荷愕,但是這有一個前提,就是用戶的手機在附近上過網(wǎng)棍矛,手機里已經(jīng)存儲了周圍WiFi的信息安疗。
??GPS定位是蘋果最后支持的,定位精度肯定是最高了够委,我自己測試了一下應(yīng)該在5米以內(nèi)荐类,但是耗時最長,耗電最厲害茁帽,需要聯(lián)網(wǎng)玉罐,需要在室外屈嗤。蘋果是先利用WiFi定位或者基站定位得出一個大概位置信息,上傳蘋果服務(wù)器吊输,蘋果服務(wù)器獲根據(jù)這個位置反饋給手機周圍衛(wèi)星的信息饶号,手機在算出自己的位置。這是蘋果的優(yōu)化季蚂,如果不是這樣茫船,就需要手機自己去掃描分析周圍衛(wèi)星信息了,可能需要10幾分鐘扭屁,現(xiàn)在只要1-2秒了算谈。

2.高德地圖的多次定位

即使執(zhí)行了停止定位的方法:

- (void)stopUpdatingLocation;

高德地圖仍然會繼續(xù)定位,一般會定位4次料滥。他先給返回一個大致的位置然眼,之后再進行校正,所以后面返回的坐標(biāo)精度比前面的高葵腹。如果你只想讓他定位一次罪治,可以自己做一個標(biāo)記,定位過了就不要走代理方法礁蔗。

- (void)amapLocationManager:(AMapLocationManager *)manager didUpdateLocation:(CLLocation *)location {
    
    if (_isFirst) {
        return;
    }
    _isFirst = YES;
    [self.locationManager stopUpdatingLocation];
}

如果需要很高的精度就不需要管它,只需執(zhí)行停止定位的方法雁社,讓高德地圖進行反復(fù)校驗浴井。這四次定位時間間隔很短,就是瞬間的事情霉撵。說瞬間有點不專業(yè)了磺浙,小伙伴們可以自己去測一下,我只能保證沒超過1分鐘徒坡。

[CLLocationManager locationServicesEnabled]

注意:這個方法是用來判斷用戶是否打開了導(dǎo)航撕氧,或者導(dǎo)航否可用,檢測的是硬件信息喇完。iOS調(diào)用系統(tǒng)功能之前伦泥,例如照相、錄音等锦溪,都會檢測一下硬件信息不脯,是否這個功能可用。

3.地圖定位的原理

地圖定位其實就是三邊測量定位刻诊,已知三個點的坐標(biāo)防楷,和未知點到這三個點的距離,求未知點的坐標(biāo)则涯。下面的圖片引用自Trilateration三邊測量定位算法复局。

3InYve.png

已知(x1,y1),(x2,y2),(x3,y3),和三個圓的半徑冲簿,求(x0,y0)亿昏。但實際情況是三個圓往往不能相交于一個點峦剔,因為三個圓的半徑有誤差,所以最后得到的是一個圓龙优,而不是點羊异,那個圓的半徑其實就是精度。為了增加精度彤断,也就是縮小圓的半徑野舶,我們需要更多的已知點和未知點到已知點的距離,來相互校驗宰衙。天上的導(dǎo)航衛(wèi)星就是已知點平道,GPS有21顆,備用三顆供炼。
??現(xiàn)在科技非常發(fā)達一屋, GPS精度非常高,軍用GPS精度都在1m以內(nèi)袋哼,冀墨,據(jù)說是0.3m,真是太恐怖了涛贯。不過室內(nèi)定位的精度就一般了诽嘉,現(xiàn)在很多項目都是受限于室內(nèi)定位精度不準(zhǔn)而發(fā)展緩慢。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弟翘,一起剝皮案震驚了整個濱河市虫腋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌稀余,老刑警劉巖悦冀,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異睛琳,居然都是意外死亡盒蟆,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進店門师骗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來茁影,“玉大人,你說我怎么就攤上這事丧凤∧枷校” “怎么了?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵愿待,是天一觀的道長浩螺。 經(jīng)常有香客問我靴患,道長,這世上最難降的妖魔是什么要出? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任鸳君,我火速辦了婚禮,結(jié)果婚禮上患蹂,老公的妹妹穿的比我還像新娘或颊。我一直安慰自己,他們只是感情好传于,可當(dāng)我...
    茶點故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布囱挑。 她就那樣靜靜地躺著,像睡著了一般沼溜。 火紅的嫁衣襯著肌膚如雪平挑。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天系草,我揣著相機與錄音通熄,去河邊找鬼。 笑死找都,一個胖子當(dāng)著我的面吹牛唇辨,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播能耻,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼助泽,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了嚎京?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤隐解,失蹤者是張志新(化名)和其女友劉穎鞍帝,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體煞茫,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡帕涌,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了续徽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蚓曼。...
    茶點故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖钦扭,靈堂內(nèi)的尸體忽然破棺而出纫版,到底是詐尸還是另有隱情,我是刑警寧澤客情,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布其弊,位于F島的核電站癞己,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏梭伐。R本人自食惡果不足惜痹雅,卻給世界環(huán)境...
    茶點故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望糊识。 院中可真熱鬧绩社,春花似錦、人聲如沸赂苗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哑梳。三九已至劲阎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間鸠真,已是汗流浹背悯仙。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吠卷,地道東北人锡垄。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像祭隔,于是被迫代替她去往敵國和親货岭。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,455評論 2 359

推薦閱讀更多精彩內(nèi)容