below code return true when you enable the location by network provider option in the settings.
settings/Location/Network provider.
isNetworkEnabled = locationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
سؤال
I'm using my Nexus5 to get the current location (I'm indoor).
// getting GPS status
isGPSEnabled = locationManager
.isProviderEnabled(LocationManager.GPS_PROVIDER);
// getting network status
isNetworkEnabled = locationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if (!isGPSEnabled && !isNetworkEnabled) {
// no network provider is enabled
Log.e(MyLogger.TAG, "Non providers are enabled");
I have wifi and mobile data.
I have a valid sim inside this device
and yet both isGPSEnabled
and isNetworkEnabled
are false.
why is that?
Network provider should be available, no?
my manifest permissions:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.example.manyexampleapp.gcm.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
btw, do i need
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
if i already ask for:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
المحلول
below code return true when you enable the location by network provider option in the settings.
settings/Location/Network provider.
isNetworkEnabled = locationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);