2014-12-03 92 views
1

我有一個應用程序在Android使用GoogleMaps API。GPS的谷歌地圖比我的應用程序更好android

當我使用谷歌地圖,我活躍的GPS和它發現我這麼快。

當我使用我的應用程序,它需要幾秒鐘,如果我在我家裏,gps不找我。爲什麼?

我的代碼的簡短摘要:

locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
MyLocationListener = new MyLocationListener(); 

locationManager.requestLocationUpdates(
     LocationManager.GPS_PROVIDER, 
     7000, 
     5, 
     MyLocationListener 
); 

THX答案和對不起我的英文不好

編輯

THX答案!問題是我不想使用網絡提供商。 Wifi是免費的,3g有400米錯誤jejeej。

我只想知道,爲什麼谷歌地圖,使用全球定位系統,找到我在1秒內完美的位置雖然我留在一棟房子。

你的答案是「使用粗略定位」。如果谷歌地圖使用網絡提供商befor GPS,它不可能他發現我如此之快。 :(

回答

2

你應該

嘗試使用粗定位的快速定位,然後精細定位有一個更加準確。粗定位通常是非常快的,而精一個需要更多的時間。基本上,這個想法是做多定位並通過更新,更準確所處重寫不太準確的那些

你可以找到關於Android開發文檔的詳細信息:http://developer.android.com/guide/topics/location/strategies.html

編輯:如果谷歌地圖能夠找到你這麼快,這是因爲你沒有移動,他們使用最後一個loc的知識通貨膨脹。請閱讀上面的鏈接,爲位置策略提供了大量有用的信息(並且它工作得很好)。

3

GPS正在使用衛星,當您在室內時無法從衛星獲得信號,因此無法找到位置(無法修復)。
GPS需要來自至少4顆衛星的信號才能得到正確的修復,通常需要幾秒鐘,一旦你已經有了修復,你可以很容易地修復它。因此,如果你使用谷歌地圖,它會讓你更快的修復。
爲了更好地瞭解GPS如何工作,請檢查此link 您可能想要使用different location approachs獲取室內位置(粗略位置可能是答案)。我還會考慮使用Google Play服務使用fused location,它可以讓您對位置提供商進行總結,並根據當時的可用性(即GPS,粗略 - 無線或網絡)確定位置。

相關問題