Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Problem requesting location updates by network

I've created a Service and grabs location data about the user so I can show my users nearby places. I want this Service to track by network in addition to GPS for 2 reasons: 1) GPS may not be enabled. 2) GPS takes quite a bit of time to lock on with my test phone.

When my Service executes the following line:

mNETEnabled = mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);

I get the following error:

11-24 14:00:41.693: ERROR/LocationManagerService(51): isProviderEnabled got exception:
11-24 14:00:41.693: ERROR/LocationManagerService(51): java.lang.IllegalArgumentException: provider=network
11-24 14:00:41.693: ERROR/LocationManagerService(51):     at com.android.server.LocationManagerService._isProviderEnabledLocked(LocationManagerService.java:1385)
11-24 14:00:41.693: ERROR/LocationManagerService(51):     at com.android.server.LocationManagerService.isProviderEnabled(LocationManagerService.java:1359)

Why is this? Am I missing a permission from the Manifest? I have ACCESS_COARSE_LOCATION in my manifest.

like image 992
Andrew Avatar asked Nov 24 '10 20:11

Andrew


2 Answers

are you running on emulator at api level 13 or greater? Android issue 19857

like image 80
j03 Avatar answered Sep 28 '22 23:09

j03


Use wireless networks setting in Security & location preference settings. Is it enabled?

like image 32
techiServices Avatar answered Sep 28 '22 23:09

techiServices