GitHub user breautek edited a comment on the discussion: Play Store Rejection 
When Creating a New App - Incompatibility with 16KB Library (Android 15)

You can also test individual binaries (the `.so` files). To do this, you'll 
need NDK 29 or later installed.

```
$ANDROID_HOME/ndk/$NDK_VERSION/toolchains/llvm/prebuilt/$YOUR_OS/bin/llvm-readelf
 -W -l your_binary_or_lib.so | grep -B2 'LOAD'
```

You'll have to fill in the blanks for:
- ANDROID_HOME
- NDK_VERSION
- YOUR_OS
- the binary file path/name

It will print out something like:

```
Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   
Flg Align
  PHDR           0x000040 0x0000000000000040 0x0000000000000040 0x0001f8 
0x0001f8 R   0x8
  LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x09e130 
0x09e130 R E 0x4000
  LOAD           0x09e130 0x00000000000a2130 0x00000000000a2130 0x0025c0 
0x002ed0 RW  0x4000
  LOAD           0x0a06f0 0x00000000000a86f0 0x00000000000a86f0 0x000020 
0x001c90 RW  0x4000
```

For the `LOAD` types, if the `Align` value is `0x4000` then that binary is 
compiled with 16kb page size. If it's `0x1000` then the binary is compiled with 
4kb page size, which was the original default, and thus not compatible with 
16kb page size devices.

EDITED: To correct the llvm-readelf usage to find the proper record types.

GitHub link: 
https://github.com/apache/cordova/discussions/554#discussioncomment-14287911

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to