IsProviderEnabled (LocationManager.NETWORK_PROVIDER) возвращает false

Я использую NETWORK_PROVIDER для получения latitude и longitude этого места.

Я уже проверил настройку в "местоположении и безопасности" и включил "использовать беспроводные сети". Но "isProviderEnabled(LocationManager.NETWORK_PROVIDER)" всегда возвращает false.

Может ли кто-нибудь мне помочь? Заранее благодарю вас!

Вот мой код:

LocationManager locManager=(LocationManager) getSystemService(Context.LOCATION_SERVICE);
boolean isEnableGPS=locManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
boolean isEnableNTW=locManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
Log.d(TAG, isEnableGPS+", "+isEnableNTW);

в 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"/>

Ответ 1

Убедитесь, что сетевое местоположение включено в настройках телефона. Вы можете обнаружить эту ситуацию и предложить пользователю включить ее, если она вам действительно нужна.

Я считаю, что это строка кода для запуска этой операции.

activity.startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);

ACTION_LOCATION_SOURCE_SETTINGS

В этой статье объясняется это http://emobiledude.com/fix-waiting-for-location-in-google-maps-after-android-4-2-update/

Android 4.0 Location Access Settings