LocationManager 禁用 NETWORK_PROVIDER

LocationManager gives NETWORK_PROVIDER disabled

我需要通过 3G 或 WIFI 获取用户的位置。

这就是我想要做的:

LocationListener locationListener = new LocationListener() {
            public void onLocationChanged(Location location) {
                manageLocation(location);
            }

            public void onStatusChanged(String provider, int status, Bundle extras) {

            }

            public void onProviderEnabled(String provider) {

            }

            public void onProviderDisabled(String provider) {

            }
        };
        locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);

问题是调用的唯一回调是 onProviderDisabledLocationManager.NETWORK_PROVIDER 作为参数。

我在清单中获得了该许可:

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

如何在我的应用程序中启用该类型的位置?

用户需要进入设备的“设置”应用并启用位置提供程序。您不能自己直接启用它。