android 定位服務

2021-07-28 05:41:06 字數 696 閱讀 4415

目前,對於定位主要有三種實現方式:通過網路、基站和gps來獲取到所有玩家的經緯度,然後傳送給伺服器計算,以此來實現附近的人資訊展示功能。

最開始做的時候,使用了android自帶的定位服務:

locationmanager locationmanager=(locationmanager) getsystemservice(context.location_service);

locationmanager.getlastknownlocation(locationmanager.gps_provider);

location lastknownlocation = locationmanager.getlastknownlocation(locationmanager.network_provider)

通過**獲取到gps或者網路資訊,一般總是顯示為null。通過gps方式準確度是最高的,但是它的缺點也非常明顯:1,比較耗電;2,絕大部分使用者預設不開啟gps模組;3,從gps模組啟動到獲取第一次定位資料,可能需要比較長的時間;4,室內幾乎無法使用。所以這個方式基本pass掉了。

而使用**的網路定位,由於國內大部分手機是被閹割過的,導致網路定位也總是顯示為null。

然後想到了基站定位,這個實現方式比較複雜,而且給出的資料也不夠準確,所以也基本pass掉了。如果對位置的準確度沒有特別高的要求可以使用基站定位。

Android定位功能(二)

在前文android定位功能 一 中,已經大致介紹了一下在android平台中,和定位功能相關的類,並舉例獲取了位置資訊。但是前文是基於criteria定製了乙個標準,通過getbestprovider 方法由android系統自動獲取最符合criteria的locationprovider,從而實...

Android定位功能總結

前言 步驟一 宣告許可權 android name android.permission.access fine location 注 在android 6.0以上,除了在androidmanifest.xml中進行許可權的宣告之外,這個許可權還需要在 去進行校驗,徵詢使用者的同意 步驟二 獲取lo...

IOS 定位服務

ios中的core location提供了定位功能,能定位裝置的當前座標,同時能得到裝置移動資訊。因為對定位裝置的輪詢是很耗電的,所以最好只在非常必要的前提下啟動。其中,最重要的類是cllocationmanager,定位管理。其定位有3種方式 1,gps,最精確的定位方式,貌似iphone1是不支...