gpt4 book ai didi

java - Android - 只获取一次位置

转载 作者:搜寻专家 更新时间:2023-10-30 19:58:04 24 4
gpt4 key购买 nike

我需要在 Android 应用程序上获取当前用户位置,所以我在网上阅读了一些教程和示例,但我看到在所有示例中,位置都是从“onLocationChange”中检索的,这意味着每次位置更改时,都会执行“onLocationChange”中的代码。

我只需要在应用程序启动时获取用户位置。

感谢您的帮助!

最佳答案

您可以使用下面的代码获取最后知道的位置。它获取位置提供程序并向后循环遍历数组。即从 GPS 开始,如果没有 GPS 则获取网络位置。您可以在需要获取位置时调用此方法。

private double[] getGPS() {
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
List<String> providers = lm.getProviders(true);

/* Loop over the array backwards, and if you get an accurate location, then break out the loop*/
Location l = null;

for (int i=providers.size()-1; i>=0; i--) {
l = lm.getLastKnownLocation(providers.get(i));
if (l != null) break;
}

double[] gps = new double[2];
if (l != null) {
gps[0] = l.getLatitude();
gps[1] = l.getLongitude();
}
return gps;
}

关于java - Android - 只获取一次位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4735942/

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