在我的應用程序中,用戶選擇一個按鈕以檢索其位置。 如果這是他第一次在這家商店使用應用程序,應用程序將使用用戶位置設置商店位置,因此它必須非常準確。 然後,當用戶回到商店時,他將能夠知道商店和他自己的位置之間的距離。強制提供新的Google Fused位置
在這種情況下,我需要店鋪位置與posible一樣精確=>禁用Wifi提供商。 然後,當店鋪位置被填滿時,我可以使用wifi來獲取用戶位置,這樣我可以節省電池。
現在,當啓用wifi或3G時,獲取位置非常快,但距離它應該有250米的差距。 我無法承受這麼大的差異來找到一家商店。所以我需要強制用戶使用GPS提供商而不是WiFi。
我該怎麼辦? AFAIK,我只能改變優先級:
LocationRequest.PRIORITY_HIGH_ACCURACY
LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY
LocationRequest.PRIORITY_LOW_POWER
LocationRequest.PRIORITY_NO_POWER
我怎麼能強迫供應商是GPS ???
這裏是我的設置:
mLocationRequest = LocationRequest.create();
/*
* Set the update interval
*/
mLocationRequest
.setInterval(LocationUtils.UPDATE_INTERVAL_IN_MILLISECONDS);
// Use high accuracy
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
// Set the interval ceiling to one minute
mLocationRequest
.setFastestInterval(LocationUtils.FAST_INTERVAL_CEILING_IN_MILLISECONDS);
mLocationClient = new LocationClient(this, this, this);
不太好。我發佈了另一個問題,可以幫助我更好地瞭解如何管理地理定位:http://stackoverflow.com/questions/28198377/can-anyone-explain-me-how-gps-tracking-is-working-in-android但我覺得缺少文檔... – 2015-02-23 17:46:36