gpt4 book ai didi

java - 获取位置安卓?

转载 作者:行者123 更新时间:2023-12-02 03:46:41 26 4
gpt4 key购买 nike

我想在一小段时间内每秒接收位置更新,所以我编写了以下代码:

     public void registerListener() {

if (ActivityCompat.checkSelfPermission(c, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(c, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
} else {
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 10, locationListener);
}
}
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {

longitude = location.getLongitude();
latitude = location.getLatitude();

Log.v(TAG, ""+longitude + " " +latitude);

}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {}
@Override
public void onProviderEnabled(String provider) {}
@Override
public void onProviderDisabled(String provider) {}
};

我从其他地方调用registerListener()。问题是,我的位置更新只被调用一次,而且我只得到该日志一次。此外,日志仅在调用 registerListener 之后大约 5-10 秒出现。

速度缓慢的原因是什么?位置为何没有更新?

谢谢

鲁奇

最佳答案

您正在请求 GPS 位置。第一次获得卫星锁定需要几秒钟的时间。如果您无法接收信号锁定(在某些建筑物的室内,地下太远,对手机造成物理损坏,例如天线松动(在早期三星中常见)),则可能永远不会发生。

至于不再收到,除非移动至少10米,否则不会再次收到。将其更改为 0 并看到它每秒出现一次。

关于java - 获取位置安卓?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36231444/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com