3 回答

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊
long milliseconds = 5000; // 5 seconds
float minimusDistance = 5.5; // 5.5m distance from current location
locationManager.requestLocationUpdates(locationProvider, milliseconds, minimusDistance, locationListener);
試試這個(gè)片段。希望它能解決你的問(wèn)題。
這只是發(fā)生,因此,您沒(méi)有提供獲取位置更新的最小間隔和最小距離。這就是您收到此錯(cuò)誤的原因。

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊
我遇到了同樣的問(wèn)題,因?yàn)槲业脑O(shè)備 ( General Mobile GM8d ) 8.1 操作系統(tǒng)更新到了 Android 9 (Pie)。之后,我嘗試使用LocationManager以以下方式定位:
LocationManager locationManager = (LocationManager) context.getSystemService(LOCATION_SERVICE);
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0,
new LocationListener() {
@Override
public void onLocationChanged(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
}
});
但是,在 Android 9 更新后,我遇到了同樣的錯(cuò)誤。解決方法如下:
重新啟動(dòng)的設(shè)備。
之后,打開(kāi)地圖應(yīng)用程序(Maps)。這樣,GPS 將被本地系統(tǒng)激活。
之后,清除應(yīng)用程序的緩存和存儲(chǔ)空間并將其從設(shè)備中卸載。
在 Android Studio 的頂部欄上,文件 > 使緩存無(wú)效/重新啟動(dòng)...
最后,在您的設(shè)備上運(yùn)行您的應(yīng)用程序
位置將在 13-24 秒內(nèi)完成,具體取決于您所在的地區(qū)。
添加回答
舉報(bào)