[Nook HD, HD+ Android Development] fanoush:
provider doesn't exist: gps

Hi! I tried experimental aosp_ovation-ota-N2G48H.180212 by amaces (it has signature spoofing enabled) with microG and most stuff is working perfecly (even installing purchased apps!) but some apps that need gps location just crash. One example is C:Geo but there are more.

Here is logcat:

02-28 09:35:54.331 1021 1299 D GmsLocManagerSvc: bound by: GetServiceRequest{serviceId=LOCATION_MANAGER, gmsVersion=9452000, packageName='cgeo.geocaching', extras=Bundle[{client_name=locationServices}]
}
02-28 09:35:54.411 855 855 I HK/LatinKbdBaseView: closing org.pocketworkstation.pckeyboard.LatinKeyboardView{b8dda33 V.ED..... ......ID 0,0-1920,480 #7f07000a app:id/LatinkeyboardBaseView}
02-28 09:35:54.577 428 449 I ActivityManager: Displayed cgeo.geocaching/.MainActivity: +1s337ms
02-28 09:35:54.601 1021 1035 D GmsLocManagerSvcImpl: updateLocationRequest: LocationRequestUpdateData{opCode=1, request=LocationRequestInternal{request=LocationRequest{priority=100, interval=2000, fast
estInterval=250, explicitFastestInterval=true, expirationTime=9223372036854775807, numUpdates=2147483647, smallestDesplacement=0.0, maxWaitTime=0}, requestNlpDebugInfo=false, restorePendingIntentListener
s=false, triggerUpdate=true, clients=[], tag='null', hideFromAppOps=false, forceCoarseLocation=false}, listener=null, pendingIntent=null, callback=com.google.android.gms.location.ILocationCallback$Stub$P
roxy@ab712d4, fusedLocationProviderCallback=com.google.android.gms.location.internal.IFusedLocationProviderCallback$Stub$Proxy@ba7cc7d}
02-28 09:35:54.610 1021 1035 D GmsLocProviderReal: gps: addRequest LocationRequestHelper{locationRequest=LocationRequest{priority=100, interval=2000, fastestInterval=250, explicitFastestInterval=true,
expirationTime=9223372036854775807, numUpdates=2147483647, smallestDesplacement=0.0, maxWaitTime=0}, hasFinePermission=true, hasCoarsePermission=true, packageName='null', lastReport=null}
02-28 09:35:54.610 1021 1035 D GmsLocProviderReal: gps: requesting location updates. minTime=2000 minDistance=0.0
02-28 09:35:54.617 6181 6181 D AndroidRuntime: Shutting down VM
02-28 09:35:54.624 6181 6181 E AndroidRuntime: FATAL EXCEPTION: main
02-28 09:35:54.624 6181 6181 E AndroidRuntime: Process: cgeo.geocaching, PID: 6181
02-28 09:35:54.624 6181 6181 E AndroidRuntime: java.lang.IllegalArgumentException: provider doesn't exist: gps
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:1688)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:1637)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzi$zza$zza.zza(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzk.zza(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzl.zza(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzd$7.zza(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzd$7.zza(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpm$zza.zzb(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpv.zzf(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpv.zzd(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzqa.zzd(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpy.zzd(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.location.internal.zzd.requestLocationUpdates(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at cgeo.geocaching.playservices.LocationProvider.updateRequest(LocationProvider.java:55)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at cgeo.geocaching.playservices.LocationProvider.onConnected(LocationProvider.java:161)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzl.zzo(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpy.zzm(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpw.zzapp(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpw.onConnected(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzqa.onConnected(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.internal.zzpp.onConnected(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzk$1.onConnected(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzd$zzj.zzasd(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzd$zza.zzc(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzd$zza.zzv(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzd$zze.zzasf(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.google.android.gms.common.internal.zzd$zzd.handleMessage(Unknown Source)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:102)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at android.os.Looper.loop(Looper.java:154)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6121)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
02-28 09:35:54.624 6181 6181 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
02-28 09:35:54.638 428 5346 W ActivityManager: Force finishing activity cgeo.geocaching/.MainActivity
02-28 09:35:54.830 6181 6181 I Process : Sending signal. PID: 6181 SIG: 9
02-28 09:35:54.847 428 5311 D GraphicsStats: Buffer count: 7
02-28 09:35:54.848 428 601 I ActivityManager: Process cgeo.geocaching (pid 6181) has died
02-28 09:35:54.848 428 601 D ActivityManager: cleanUpApplicationRecord -- 6181

Is this due to microg or AOSP? should the ROM (AOSP) provide gps provider or does gapps provide one based on wifi location if device does not have GPS?

I installed Bluetooth GPS provider app, enabled fake location in developer settings and set Bluetooth GPS provider there. It didn't help.

Same bug is reported also here https://github.com/microg/android_packages_apps_GmsCore/issues/396

All those apps work fine on my second tablet with lnos and real gapps.

BTW for microG I used nice install zip from https://shadow53.com/android/no-gapps/setup-guide/microg/ which includes patched google play store. I just needed to set 'spoof package signature' permission in Setttings->Applications->cogwheel->App permission for play store and microg and then cleared play store data and it works. Without gapps there is more memory free so web browsing is much better and most stuff works smoothly including youtube, paid games.