DaylightingSociety / WhereAreTheEyes

Surveillance Detection and Mapping App
https://eyes.daylightingsociety.org
BSD 3-Clause "New" or "Revised" License
230 stars 18 forks source link

Crash / Cannot start on Android (Replicant 6, Samsung Galaxy Note II) #54

Open Necklaces opened 6 years ago

Necklaces commented 6 years ago

How to reproduce:

  1. Using a Samsung Galaxy Note II running Replicant 6, download and install WhereAreTheEyes from F-Droid
  2. Start WhereAreTheEyes.
  3. Crash. "Unfortunately, WhereAreTheEyes has stopped."

Here's what I get from adb logcat:

10-23 09:37:17.600 32637   819 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 pkg=org.daylightingsociety.wherearetheeyes cmp=org.daylightingsociety.wherearetheeyes/.MainActivity} from uid 1000 on display 0
10-23 09:37:17.625 32637  1865 I ActivityManager: Start proc 17260:org.daylightingsociety.wherearetheeyes/u0a86 for activity org.daylightingsociety.wherearetheeyes/.MainActivity
10-23 09:37:17.730 17260 17260 V MapboxTelemetry: Initializing telemetry.
10-23 09:37:17.760 17260 17260 V MapboxTelemetry: Setting user agent value: org.daylightingsociety.wherearetheeyes/1.3.0/6 MapboxEventsAndroid/5.0.2
10-23 09:37:17.760 17260 17260 V MapboxTelemetry: Enabling telemetry.
10-23 09:37:17.765 17260 17260 V MapboxTelemetry: Location permissions not granted (checking again in 10 seconds).
10-23 09:37:17.780 17260 17260 I art     : Thread[1,tid=17260,Native,Thread*=0x42a2fa98,peer=0x74e392a0,"main"] recursive attempt to load library "/data/app/org.daylightingsociety.wherearetheeyes-1/lib/arm/libmapbox-gl.so"
10-23 09:37:17.790 17260 17260 I art     : Thread[1,tid=17260,Native,Thread*=0x42a2fa98,peer=0x74e392a0,"main"] recursive attempt to load library "/data/app/org.daylightingsociety.wherearetheeyes-1/lib/arm/libmapbox-gl.so"
10-23 09:37:17.790 17260 17260 I art     : Thread[1,tid=17260,Native,Thread*=0x42a2fa98,peer=0x74e392a0,"main"] recursive attempt to load library "/data/app/org.daylightingsociety.wherearetheeyes-1/lib/arm/libmapbox-gl.so"
10-23 09:37:17.910 17260 17260 D libEGL  : Emulator without GPU support detected. Fallback to software renderer.
10-23 09:37:17.920 32381 32674 E NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'TIME_NS' not found
10-23 09:37:17.920 32381 32674 E NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'UID' not found
10-23 09:37:17.935 17260 17260 D libEGL  : loaded /system/lib/egl/libGLES_android.so
10-23 09:37:17.990 17260 17260 E mbgl    : {wherearetheeyes}[OpenGL]: eglChooseConfig() returned no configs.
10-23 09:37:17.990 17260 17260 D AndroidRuntime: Shutting down VM
10-23 09:37:17.990 17260 17260 E AndroidRuntime: FATAL EXCEPTION: main
10-23 09:37:17.990 17260 17260 E AndroidRuntime: Process: org.daylightingsociety.wherearetheeyes, PID: 17260
10-23 09:37:17.990 17260 17260 E AndroidRuntime: Theme: themes:{}
10-23 09:37:17.990 17260 17260 E AndroidRuntime: java.lang.Error: eglChooseConfig() failed
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at com.mapbox.mapboxsdk.maps.NativeMapView.nativeInitializeDisplay(Native Method)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at com.mapbox.mapboxsdk.maps.NativeMapView.initializeDisplay(NativeMapView.java:127)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at com.mapbox.mapboxsdk.maps.MapView.onCreate(MapView.java:213)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at org.daylightingsociety.wherearetheeyes.MainActivity.onCreate(MainActivity.java:73)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.Activity.performCreate(Activity.java:6251)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2403)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2510)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.ActivityThread.-wrap11(ActivityThread.java)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1363)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.os.Handler.dispatchMessage(Handler.java:102)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.os.Looper.loop(Looper.java:148)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at android.app.ActivityThread.main(ActivityThread.java:5461)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at java.lang.reflect.Method.invoke(Native Method)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
10-23 09:37:17.990 17260 17260 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
10-23 09:37:17.990 32637 32652 W ActivityManager:   Force finishing activity org.daylightingsociety.wherearetheeyes/.MainActivity
10-23 09:37:18.295 32637 32652 I WindowManager: Screenshot max retries 4 of Token{d265295 ActivityRecord{e12024c u0 org.daylightingsociety.wherearetheeyes/.MainActivity t1013 f}} appWin=Window{28b979b u0 Starting org.daylightingsociety.wherearetheeyes} drawState=4
10-23 09:37:18.800 32637 32670 W ActivityManager: Activity pause timeout for ActivityRecord{e12024c u0 org.daylightingsociety.wherearetheeyes/.MainActivity t1013 f}
10-23 09:37:29.125 32637 32670 W ActivityManager: Activity destroy timeout for ActivityRecord{e12024c u0 org.daylightingsociety.wherearetheeyes/.MainActivity t1013 f}

Quickly tried:

  1. App info -> Permissions -> Enable location for WhereAreTheEyes
  2. Still crashes.

On closer inspection it seems like this is an error in mapbox: https://github.com/mapbox/mapbox-gl-native/issues/9120

Doesn't seem like there's a fix, so not sure what to do..

milo-trujillo commented 6 years ago

Brutal. That does indeed look like a bug in MapBox. Thank you for letting us know!

I'm not sure what we can do besides wait for MapBox to fix it upstream, but we'll make sure to grab the latest version of their library when we release 1.4, or can push a 1.3.1 patch if they release an update sooner.

milo-trujillo commented 6 years ago

Alright, confirmed that this is a known MapBox issue that they claim is fixed upstream in the latest release. We'll pull this in to the 1.4 branch for certain, and see about making an emergency 1.3.1 patch.