【发布时间】:2023-03-21 18:58:02
【问题描述】:
我使用 LocationManager 通过“经度”和“纬度”获取用户地址,但是当我调用 location.getLongitude() 和 location.getLatitude() 时,它返回 0 给我。我设法使用 Google,但没有人遇到我的问题。
Jeremy Edwards 先生建议我:
确保在手机设置中启用了基于网络的位置信息。您可以检测到这种情况并在您确实需要时提示用户启用它。 我相信这是启动此活动的代码行。
我会这样做,但它可以提供帮助。有时给我经度和纬度,有时没有。
这是我的代码:
String locationProvider = LocationManager.NETWORK_PROVIDER;
LocationManager locationManager = (LocationManager) this
.getSystemService(Context.LOCATION_SERVICE);
Location location = locationManager
.getLastKnownLocation(locationProvider);
AndroidMainfest.xml 中的权限:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
谁能帮帮我?提前谢谢!
【问题讨论】:
-
你是在模拟器还是手机上试试?如果在模拟器中,则启用 DDMS 设置。如果在手机中,则启用带有街道数据设置的 GPS。
-
我使用的是 Nexus 4,我会尝试通过街道数据设置启用 GPS。
标签: android locationmanager android-location