facebook / flipper

A desktop debugging platform for mobile developers.

Home Page:https://fbflipper.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Flipper for Android crashes on startup on systems using a 16KB Page size

andrewfarm opened this issue Β· comments

πŸ› Bug Report

As described in https://developer.android.com/guide/practices/page-sizes, Android 15 adds support for devices that use a 16KB page size. When running an app set up with Flipper on one of these devices, the following crash occurs:

09:54:50.541  E  FATAL EXCEPTION: FlipperEventBaseThread
                 Process: [process name], PID: 6072
                 java.lang.UnsatisfiedLinkError: dlopen failed: empty/missing DT_STRTAB in "/data/app/[...]/lib/x86_64/libfbjni.so"
                 	at java.lang.Runtime.loadLibrary0(Runtime.java:1081)
                 	at java.lang.Runtime.loadLibrary0(Runtime.java:1003)
                 	at java.lang.System.loadLibrary(System.java:1765)
                 	at com.facebook.soloader.nativeloader.SystemDelegate.loadLibrary(SystemDelegate.java:24)
                 	at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:52)
                 	at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:30)
                 	at com.facebook.jni.HybridData.<clinit>(HybridData.java:34)
                 	at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:25)
09:54:50.544  E  FATAL EXCEPTION: FlipperConnectionThread
                 Process: [process name], PID: 6072
                 java.lang.NoClassDefFoundError: <clinit> failed for class com.facebook.flipper.android.EventBase; see exception in other thread
                 	at com.facebook.flipper.android.FlipperThread.run(FlipperThread.java:25)

To Reproduce

Set up Flipper in an Android app. Run the app on an emulator with a system image that uses a 16KB page size.

Environment

Android Emulator 35.1.4
Google APIs Experimental 16k Page Size Intel x86_64 Atom System Image - API Level VanillaIceCream - Revision 1
com.facebook.soloader:soloader:0.11.0
com.facebook.flipper:flipper:0.250.0
com.facebook.flipper:flipper-network-plugin:0.250.0
com.facebook.stetho:stetho:1.6.0
com.facebook.stetho:stetho-okhttp3:1.6.0

We are seeing similar behavior, when going through the steps described here, thelibflipper.so is being marked as UNALIGNED

+1. I think the flipper library owners need to do something similar to how things were handled here

Solution:
https://developer.android.com/guide/practices/page-sizes#cmake

+1. I think the flipper library owners need to do something similar to how things were handled here

Solution: https://developer.android.com/guide/practices/page-sizes#cmake

Yes, we need build again to support 16kb page size