Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

isProviderEnabled(LocationManager.NETWORK_PROVIDER) return false

I am using NETWORK_PROVIDER to get latitude and longitude of the place.

I'v already check the setting in the "location & security" and enable "use wireless networks". But "isProviderEnabled(LocationManager.NETWORK_PROVIDER)" always return false.

Can anyone help me? Thank you in advance!

Here is my code :

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);

permission in the 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"/>
like image 884
shell Avatar asked Apr 14 '12 15:04

shell


1 Answers

Make sure that network based location is enabled in the phone's settings. You can detect this situation and prompt the user to enable it if you really need it.

I believe this is the line of code to launch this activity.

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

ACTION_LOCATION_SOURCE_SETTINGS

This article explains it http://emobiledude.com/fix-waiting-for-location-in-google-maps-after-android-4-2-update/

Android 4.0 Location Access Settings

like image 96
Jeremy Edwards Avatar answered Sep 22 '22 16:09

Jeremy Edwards