Miles mobility crash, how to help debug?

FP4 eos version 1.12.3

id like to help investigate why the Miles Mobility app, a popular car sharing app in berlin, stopped working. the app opens and just as the ui is displayed it crashes

from pcapdroid the following is the profile it takes of app. the advanced privacy features off eos were all of while this was taken:

Name: MILES
Package name: com.driveby.app
UID: 10310
Version: 4.23
Target SDK: 31
Installed on: 07/21/23 15:07:36
Last update: 07/21/23 15:07:36
Traffic: 56.9 KB received — 18.1 KB sent
Connections: 11

Permissions:
android.permission.INTERNET
android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
com.google.android.gms.permission.AD_ID
android.permission.USE_BIOMETRIC
android.permission.CAMERA
android.permission.USE_FINGERPRINT
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_COARSE_LOCATION
android.permission.BLUETOOTH_SCAN
android.permission.BLUETOOTH_ADVERTISE
android.permission.BLUETOOTH_CONNECT
android.permission.READ_MEDIA_IMAGES
android.permission.READ_EXTERNAL_STORAGE
android.permission.NEARBY_WIFI_DEVICES
android.permission.WAKE_LOCK
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE
android.permission.VIBRATE
com.google.android.c2dm.permission.RECEIVE
com.fingerprints.service.ACCESS_FINGERPRINT_MANAGER
com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY
com.android.vending.CHECK_LICENSE
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.NFC
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.FOREGROUND_SERVICE

i can attach a pcap recording of app network traffic if desired please advise where to upload. shown is a screenshot of hosts it contacts

In microG 0.2.27 was a fix that made location work and positive reports came in, something must’ve changed - Car sharing app Miles uses wrong location - #24 by vossi

A logcat will give you better clues than a package capture why the app is crashing (or voluntary exiting). There are on-device apps, but if you’re familiar with adb it’s a bit easier. Just mark the last line by mouse double click before the interaction that will make it crash, and afterwards ctrl+shift+mouseclick to mark the last → localised crash log.

(you can try to book Miles cars through FreeNow as a fallback)

Meh, for what its worth heres adb logcat on the miles mobility app crash. I’m not familiar enough with this system to know what clues this might provide as to why the app crashes with slashEslashOS 1.12.3 (and likely 1.13 also) but perhaps someone else can use this to get a little bit further

08-12 17:08:25.800 27899 31349 I ReactNativeJS: Running "miles" with {"rootTag":1}
08-12 17:08:25.925 27899 27899 I ReactNative: [GESTURE HANDLER] Initialize gesture handler for root view com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView{acf7711 V.E...... ......ID 0,0-1080,2126 #1}
08-12 17:08:25.930 27899 31445 V SoLoader: libimagepipeline.so not found on /data/data/com.driveby.app/lib-main
08-12 17:08:25.930 27899 31445 D SoLoader: libimagepipeline.so found on /data/app/~~CVss5FC9jiSzyd5ehIb37g==/com.driveby.app-tI-38rqbnrKy4c6c9yud1A==/lib/arm64
08-12 17:08:25.930 27899 31445 D SoLoader: Not resolving dependencies for libimagepipeline.so
08-12 17:08:25.965  3560 29696 W MeasurementService: Unknown method 6 in com.google.android.gms.measurement.internal.IMeasurementService, skipping
08-12 17:08:26.192 18794 31424 W adbd    : timed out while waiting for FUNCTIONFS_BIND, trying again
08-12 17:08:26.192 18794 31424 I adbd    : UsbFfs: connection terminated: monitor thread finished
08-12 17:08:26.192 18794 18794 I adbd    : UsbFfs: already offline
08-12 17:08:26.193 18794 18794 I adbd    : destroying transport UsbFfs
08-12 17:08:26.193 18794 18794 I adbd    : UsbFfsConnection being destroyed
08-12 17:08:26.210 18794 18800 I adbd    : opening control endpoint /dev/usb-ffs/adb/ep0
08-12 17:08:26.212 18794 18800 I adbd    : UsbFfsConnection constructed
08-12 17:08:25.056     0     0 I         : read descriptors
08-12 17:08:26.213 18794 31457 I adbd    : UsbFfs-monitor thread spawned
08-12 17:08:25.057     0     0 I         : read strings
08-12 17:08:26.316  1702  2299 D OTADexopt: Next command: 10 dexopt /product/priv-app/SettingsIntelligence/SettingsIntelligence.apk 50149 com.android.settings.intelligence arm64 -3 ! 1098 verify ! PCL[]{PCL[/system/framework/android.test.base.jar]} default:privapp:targetSdkVersion=29 false 29 primary.prof ! first-boot
08-12 17:08:26.372 31465 31465 W linker  : Warning: failed to find generated linker configuration from "/linkerconfig/ld.config.txt"
08-12 17:08:25.245     0     0 I apexd   : OTA chroot bootstrap subcommand detected
08-12 17:08:25.245     0     0 I apexd   : Scanning /system/apex for pre-installed ApexFiles
08-12 17:08:25.246     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.wifi.capex
08-12 17:08:25.246     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.sdkext.apex
08-12 17:08:25.247     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.media.capex
08-12 17:08:25.247     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.media.swcodec.capex
08-12 17:08:25.247     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.scheduling.apex
08-12 17:08:25.248     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.runtime.apex
08-12 17:08:25.248     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.ipsec.capex
08-12 17:08:25.248     0     0 I apexd   : Found pre-installed APEX /system/apex/com.android.art.capex
08-12 17:08:26.469   612   626 D vold    : Disk at 7:216 changed
08-12 17:08:26.476 27899 31351 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.airbnb.android.react.maps.SizeReportingShadowNode
08-12 17:08:26.479   612   626 D vold    : Disk at 7:224 changed
08-12 17:08:26.484   612   626 D vold    : Disk at 7:232 changed
08-12 17:08:26.492   612   626 D vold    : Disk at 7:240 changed
08-12 17:08:26.492 27899 27899 D MapsInitializer: preferredRenderer: null
08-12 17:08:26.492 27899 27899 D zzca    : preferredRenderer: null
08-12 17:08:26.492 27899 27899 I zzca    : Making Creator dynamically
08-12 17:08:26.493 27899 27899 W DynamiteModule: IDynamite loader version = 2, no high precision latency measurement.
08-12 17:08:26.493 27899 27899 I DynamiteModule: Considering local module com.google.android.gms.maps_dynamite:0 and remote module com.google.android.gms.maps_dynamite:1
08-12 17:08:26.493 27899 27899 I DynamiteModule: Selected remote version of com.google.android.gms.maps_dynamite, version >= 1
08-12 17:08:26.493 27899 27899 W DynamiteModule: IDynamite loader version = 2
08-12 17:08:26.493 27899 27899 D GmsDynamiteLoaderImpl: createModuleContext for com.google.android.gms.maps_dynamite at version 1
08-12 17:08:26.495 27899 27899 W com.driveby.ap: Unsupported class loader
08-12 17:08:26.496   612   626 D vold    : Disk at 7:248 changed
08-12 17:08:26.499   612   626 D vold    : Disk at 7:256 changed
08-12 17:08:26.503   612   626 D vold    : Disk at 7:264 changed
08-12 17:08:26.509   612   626 D vold    : Disk at 7:272 changed
08-12 17:08:26.510   612   626 D vold    : Disk at 7:280 changed
08-12 17:08:26.516   612   626 D vold    : Disk at 7:288 changed
08-12 17:08:26.519   612   626 D vold    : Disk at 7:296 changed
08-12 17:08:26.522   612   626 D vold    : Disk at 7:304 changed
08-12 17:08:26.525   612   626 D vold    : Disk at 7:312 changed
08-12 17:08:26.528   612   626 D vold    : Disk at 253:40 changed
08-12 17:08:25.373     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.529   612   626 D vold    : Disk at 253:40 changed
08-12 17:08:26.530   612   626 D vold    : Disk at 7:320 changed
08-12 17:08:26.532   612   626 D vold    : Disk at 253:41 changed
08-12 17:08:26.532   612   626 D vold    : Disk at 253:41 changed
08-12 17:08:26.533   612   626 D vold    : Disk at 253:42 changed
08-12 17:08:25.377     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:25.378     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.534   612   626 D vold    : Disk at 253:42 changed
08-12 17:08:26.540   612   626 D vold    : Disk at 253:43 changed
08-12 17:08:26.540   612   626 D vold    : Disk at 253:43 changed
08-12 17:08:25.385     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.577   612   626 D vold    : Disk at 7:328 changed
08-12 17:08:26.587   612   626 D vold    : Disk at 253:44 changed
08-12 17:08:26.588   612   626 D vold    : Disk at 253:44 changed
08-12 17:08:25.432     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.602   612   626 D vold    : Disk at 7:336 changed
08-12 17:08:26.606   612   626 D vold    : Disk at 7:344 changed
08-12 17:08:26.609   612   626 D vold    : Disk at 7:352 changed
08-12 17:08:25.457     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.612 27899 27899 W com.driveby.ap: Unsupported class loader
08-12 17:08:26.614   612   626 D vold    : Disk at 253:45 changed
08-12 17:08:26.614   612   626 D vold    : Disk at 253:45 changed
08-12 17:08:26.614  1702 26759 E system_server: Invalid class loader spec: =UnsupportedClassLoaderContext=
08-12 17:08:26.614  1702 26759 E PackageDexUsage: Unsupported context?
08-12 17:08:25.464     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:25.467     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.617   612   626 D vold    : Disk at 7:360 changed
08-12 17:08:26.619   612   626 D vold    : Disk at 253:46 changed
08-12 17:08:26.620   612   626 D vold    : Disk at 7:368 changed
08-12 17:08:26.622   612   626 D vold    : Disk at 253:46 changed
08-12 17:08:26.622 27899 27899 D GmsMapCreator: initV2 12451000
08-12 17:08:26.623   612   626 D vold    : Disk at 253:47 changed
08-12 17:08:26.625   612   626 D vold    : Disk at 253:47 changed
08-12 17:08:26.626 27899 27899 D GmsMapCreator: Mapbox-based Map initialized (preferred renderer was 0)
08-12 17:08:26.626 27899 27899 D MapsInitializer: loadedRenderer: LATEST
08-12 17:08:26.626 27899 27899 D zzca    : preferredRenderer: null
08-12 17:08:25.473     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.630   612   626 D vold    : Disk at 253:48 changed
08-12 17:08:26.630   612   626 D vold    : Disk at 7:376 changed
08-12 17:08:26.631   612   626 D vold    : Disk at 253:48 changed
08-12 17:08:26.632   612   626 D vold    : Disk at 253:49 changed
08-12 17:08:25.477     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.633   612   626 D vold    : Disk at 7:384 changed
08-12 17:08:26.634   612   626 D vold    : Disk at 253:49 changed
08-12 17:08:26.635 27899 27899 D GmsMapView: onCreate: null
08-12 17:08:26.637   612   626 D vold    : Disk at 7:392 changed
08-12 17:08:26.639   612   626 D vold    : Disk at 253:50 changed
08-12 17:08:26.641   612   626 D vold    : Disk at 253:50 changed
08-12 17:08:25.483     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:25.487     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.642   612   626 D vold    : Disk at 253:51 changed
08-12 17:08:26.643   612   626 D vold    : Disk at 253:51 changed
08-12 17:08:26.645   612   626 D vold    : Disk at 253:52 changed
08-12 17:08:25.490     0     0 I device-mapper: verity: sha256 using implementation "sha256-ce"
08-12 17:08:26.646   612   626 D vold    : Disk at 253:52 changed
08-12 17:08:26.690 27899 27899 D GmsMultiArchLoader: Loading mapbox-gl from /data/user/0/com.driveby.app/cache/.gmscore/lib/arm64-v8a/libmapbox-gl.so
08-12 17:08:26.691 27899 27899 W com.driveby.app: type=1400 audit(0.0:7309): avc: granted { execute } for path="/data/data/com.driveby.app/cache/.gmscore/lib/arm64-v8a/libmapbox-gl.so" dev="dm-36" ino=330645 scontext=u:r:untrusted_app:s0:c54,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c54,c257,c512,c768 tclass=file app=com.driveby.app
08-12 17:08:25.556     0     0 W apexd   : 77 output lines suppressed due to ratelimiting
08-12 17:08:26.727 27899 27899 D GmsMap  : create
08-12 17:08:26.772 27899 31552 I Mbgl-EGLConfigChooser: In emulator: false
08-12 17:08:26.779 27899 27899 D GmsMap  : Invoking callback now: map cannot be initialized because it is not shown (yet)
08-12 17:08:26.780 27899 27899 D GmsMap  : onTransact [unknown]: 80, android.os.Parcel@abce058, 0
08-12 17:08:26.780 27899 27899 D GmsMap  : onTransact [unknown]: 45, android.os.Parcel@ad685b1, 0
08-12 17:08:26.781 27899 31565 I Mbgl    : {GLThread 319}[General]: GPU Identifier: Adreno (TM) 619
08-12 17:08:26.782 27899 27899 D GmsMap  : onTransact [unknown]: 85, android.os.Parcel@abce058, 0
08-12 17:08:26.782 27899 27899 D GmsMap  : onTransact [unknown]: 87, android.os.Parcel@ad685b1, 0
08-12 17:08:26.782 27899 27917 I OpenGLRenderer: Davey! duration=9223261135961ms; Flags=0, FrameTimelineVsyncId=3562922, IntendedVsync=110900893606278, Vsync=110900893606278, InputEventId=0, HandleInputStart=110900894305348, AnimationStart=110900894306182, PerformTraversalsStart=110901165256963, DrawStart=110901172172640, FrameDeadline=110900910272944, FrameInterval=110900894302692, FrameStartTime=16666666, SyncQueued=110901174483838, SyncStart=110901174532067, IssueDrawCommandsStart=110901174790609, SwapBuffers=110901175840661, FrameCompleted=9223372036854775807, DequeueBufferDuration=11354, QueueBufferDuration=580938, GpuCompleted=9223372036854775807, SwapBuffersCompleted=110901176710452, DisplayPresentTime=0, 
08-12 17:08:26.784 27899 27899 D GmsMap  : onTransact [unknown]: 83, android.os.Parcel@ad685b1, 0
08-12 17:08:26.786 27899 27899 D GmsMap  : Delay callback invocation, as map is not yet loaded
08-12 17:08:26.788  3560 29696 D LocationManager: bound by: GetServiceRequest{serviceId=LOCATION_MANAGER, gmsVersion=12451000, packageName='com.driveby.app', extras=Bundle[{client_name=locationServices}]}
08-12 17:08:26.798  3560 15155 D MeasurementService: f1(com.google.android.gms.measurement.internal.EventParcel@ab8b0ac) for AppMetadata[com.driveby.app]
08-12 17:08:26.814  3560 29696 D MeasurementService: f1(com.google.android.gms.measurement.internal.EventParcel@77fd175) for AppMetadata[com.driveby.app]
08-12 17:08:26.840 27899 27899 D GmsMapBitmap: registerMap
08-12 17:08:26.840 27899 27899 D GmsMap  : Invoking 0 callbacks delayed, as map is initialized
08-12 17:08:26.869 27899 27899 D GmsMap  : Invoking callback delayed, as map is loaded
08-12 17:08:26.876 27899 27899 D AndroidRuntime: Shutting down VM
08-12 17:08:26.876 27899 27899 E AndroidRuntime: FATAL EXCEPTION: main
08-12 17:08:26.876 27899 27899 E AndroidRuntime: Process: com.driveby.app, PID: 27899
08-12 17:08:26.876 27899 27899 E AndroidRuntime: java.lang.NullPointerException: Listener must not be null
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.common.internal.Preconditions.checkNotNull(com.google.android.gms:play-services-basement@@18.0.0:2)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.common.api.internal.ListenerHolders.createListenerKey(com.google.android.gms:play-services-base@@18.0.1:1)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.location.FusedLocationProviderClient.removeLocationUpdates(Unknown Source:6)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.airbnb.android.react.maps.FusedLocationSource.deactivate(FusedLocationSource.java:70)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.zzs.deactivate(com.google.android.gms:play-services-maps@@18.0.0:1)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.internal.zzj.zza(com.google.android.gms:play-services-maps@@18.0.0:1)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.internal.maps.zzb.onTransact(com.google.android.gms:play-services-maps@@18.0.0:3)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Binder.transact(Binder.java:1064)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.internal.ILocationSourceDelegate$Stub$Proxy.deactivate(ILocationSourceDelegate.java:121)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at org.microg.gms.maps.mapbox.SourceLocationEngine.removeLocationUpdates(SourceLocationEngine.kt:41)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at org.microg.gms.maps.mapbox.GoogleMapImpl.updateLocationEngineListener(GoogleMap.kt:423)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at org.microg.gms.maps.mapbox.GoogleMapImpl.setLocationSource(GoogleMap.kt:436)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.internal.IGoogleMapDelegate$Stub.onTransact(IGoogleMapDelegate.java:474)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at org.microg.gms.maps.mapbox.GoogleMapImpl.onTransact(GoogleMap.kt:876)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Binder.transact(Binder.java:1064)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.internal.maps.zza.zzc(com.google.android.gms:play-services-maps@@18.0.0:2)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.internal.zzg.setLocationSource(com.google.android.gms:play-services-maps@@18.0.0:3)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.google.android.gms.maps.GoogleMap.setLocationSource(com.google.android.gms:play-services-maps@@18.0.0:2)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.airbnb.android.react.maps.AirMapView$15.onHostResume(AirMapView.java:403)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.facebook.react.bridge.ReactContext$1.run(ReactContext.java:174)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:938)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:26)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Looper.loopOnce(Looper.java:201)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:288)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:7870)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
08-12 17:08:26.876 27899 27899 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

for my own future reference, reproduce

  • adb shell pm list packages | grep -i driveby
  • adb shelldumpsys | grep -i miles -A18
  • adb am start -n com.driveby.app/com.zoontek.rnbootsplash.RNBootSplashActivity
    or run logcat and start app by hand on phone (the output included above used this method)
  • adb logcat

well, appears it was an slashEslashOS bug with map handling which was fixed in 1.13 . I’m guessing the issue was this from the release notes: We addressed some issues with in-app Maps display

just make a mental note that indeed somtimes slashEslashOS could be at fault and its not only or always microg or lineage to blame