[BUG?]: symbol visibility for different api levels.
- Dominant language
- No language data
- Stars
- 2.3k
- Forks
- 310
- PR merge metrics
- No merged PRs in 30d
Description
### Description
`AConfiguration_setScreenRound` does not appear in `nm -D toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/aarch64-linux-android/28/libandroid.so` but not marked with `__INTRODUCED_IN`.
`ANativeWindow_getBuffersDataSpace`, `ANativeWindow_setBuffersDataSpace` and `ANativeWindow_setBuffersTransform` have opposite problem. They appear with `__INTRODUCED_IN(28)` in header but do not appear in `nm -D .../28/libandroid.so`.
Not sure if it is a bug or a documentation problem but probably it should be fixed.
### I am using a supported NDK
- [x] I have checked and the NDK I'm using is currently supported
### Affected versions
r27
Contributor guide
Research direction
Start by comparing the __INTRODUCED_IN annotations for the four named symbols with their exports in toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/aarch64-linux-android/28/libandroid.so using nm -D. Determine whether the API 28 headers and library exports should agree, then verify that the selected resolution covers all four discrepancies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100