microg / UnifiedNlp

Alternative network location provider for Android, with plugin interface to easily integrate third-party location providers.
944 stars 207 forks source link

GPS does not work while roaming on LineageOS 20 (lake) #246

Open terceiro opened 1 year ago

terceiro commented 1 year ago

Describe the bug I cannot get location to work at all. I tried on OsmAnd+, Organic Maps, and GPSTest. A few points

Using logcat, I get two different issues. Trying to use either OamAnd+ or Organic Maps, I get a Illegal Argument exception:

02-05 22:13:49.206  1861  1930 W LocationManagerService: system location request with no attribution tag
02-05 22:13:49.206  1861  1930 W LocationManagerService: java.lang.IllegalArgumentException
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.location.LocationManagerService.registerLocationListener(LocationManagerService.java:720)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.location.LocationManager.requestLocationUpdates(LocationManager.java:1564)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.location.fused.FusedLocationProvider$ChildLocationListener.resetProviderRequest(FusedLocationProvider.java:304)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.location.fused.FusedLocationProvider$ChildLocationListener.-$$Nest$mresetProviderRequest(Unknown Source:0)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.location.fused.FusedLocationProvider.updateRequirementsLocked(FusedLocationProvider.java:172)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.location.fused.FusedLocationProvider.onSetRequest(FusedLocationProvider.java:123)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.location.provider.LocationProviderBase$Service.setRequest(LocationProviderBase.java:324)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.location.provider.proxy.ProxyLocationProvider.lambda$onSetRequest$0(ProxyLocationProvider.java:184)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.location.provider.proxy.ProxyLocationProvider$$ExternalSyntheticLambda0.run(Unknown Source:2)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.servicewatcher.ServiceWatcherImpl$MyServiceConnection.runOnBinder(ServiceWatcherImpl.java:248)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.servicewatcher.ServiceWatcherImpl.lambda$runOnBinder$0(ServiceWatcherImpl.java:126)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.servicewatcher.ServiceWatcherImpl$$ExternalSyntheticLambda1.run(Unknown Source:4)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.os.Handler.handleCallback(Handler.java:942)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.os.Handler.dispatchMessage(Handler.java:99)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.os.Looper.loopOnce(Looper.java:201)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.os.Looper.loop(Looper.java:288)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at android.os.HandlerThread.run(HandlerThread.java:67)
02-05 22:13:49.206  1861  1930 W LocationManagerService:    at com.android.server.ServiceThread.run(ServiceThread.java:44)

When I try any app, including all of the ones I mentioned above, there are always instances of this message:

02-05 22:13:49.235  2705  2962 I LocationAccessPolicy: org.fitchfamily.android.gsmlocation is aware of fine but the app-ops permission is specifically denied.

(in the Organic Maps case, I get both the exception and instances of this permission issue)

I am not entirely sure either of those is directly linked to the issue.

Expected behavior Location (via GPS or otherwise) should work out of the box.

System Android Version: 13 Custom ROM: LineageOS 20 for microg (lineage-20.0-20230126-microG-lake.zip) Device: Motorola moto g7 plus (lake)

Additional context I am currently traveling so I am on roaming (with mobile data off), but even the network-based detection and the GSM tower one don't work. Back home Uber worked just fine to get to the airport.

Codain commented 1 year ago

Hello @terceiro, probably you will be interested to know that I'm facing the same error than you (java.lang.IllegalArgumentException) and also have no Location on E OS (see https://gitlab.e.foundation/e/backlog/-/issues/5770#note_371348).