Apps crash at startup with libpairipcore.so-related errors.
Many apps that were merged from splits taken directly from the Google Store crash on startup. I had about 20 apps that behaved this way. I tried all variants of the -extractNativeLib option, but the results and errors were the same. I'm providing one of the apps here.
To Reproduce Steps to reproduce the behavior:
- Used version: 1.4.5
- Operating system: Android Emulator with Pixel 7 Pro API 35 (Android 15)
- Command
java -jar APKEditor-1.4.5.jar m -i splits_folder
Log/Stacktrace Those logs from Logcat:
Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0xb40000753fcdce10 in tid 5574 (co.brainly), pid 5574 (co.brainly)
Cmdline: co.brainly
pid: 5574, tid: 5574, name: co.brainly >>> co.brainly <<<
#00 pc 000000000005bfc4 /data/app/~~XcfXEmbWTgRvXKmcR7yxjg==/co.brainly-yAGue39KDjIUkCTan6AmLg==/base.apk!libpairipcore.so (offset 0x2394000)
Used apk file I have attached the merged final APK and the splits. Here is a link to the Dropbox transfer because GitHub gave me a "Failed to upload" error on the zip file. https://www.dropbox.com/t/8R0WsXjS6T1cT1s5
Additional context I also tried running those apps on an actual Android 14 device with the same results.
I think it is pairip protection mechanism against tampering. Any change on the apk could trigger such crash. To experiment just sign with your key and install.
Those were signed with the Android debug keystore.
I was asking you to re-sign original apk with your own key, to prove that this issue is not related to APKEditor
I am also experiencing the same issue. After merging splits when I install the apk with my own signed key, the app works fine. But after merging, decompiling and recompiling, when the app is installed with or without my own signed key, the app gets crashed.
The issue is not occuring with an original un-split apk file; only with split apks that are decompiled and recompiled.
Edit: I tested with apktool for decompiling and recompiling and found no issue there. So, the bug is possibly coming from apkeditor itself.