Request: Update DJI SDK 4.18 native .so libraries to use 16 KB LOAD alignment (required on Android 15)
Dear DJI SDK Team,
We are currently using DJI Android SDK v4.18 in our application due to required support for Mavic 2 series, which is not available in SDK v5.
During static analysis of our APK, we discovered that many .so libraries shipped with the SDK have 4 KB LOAD section alignment, which causes warnings and may lead to compatibility or performance issues on certain devices. According to platform requirements, 16 KB alignment is required for native libraries in modern Android environments.
See attached screenshot for reference: • All affected libraries show: ⚠️ 4 KB LOAD section alignment, but 16 KB is required
We kindly request that you update the native libraries in SDK v4.x (or release an updated patch) with proper 16 KB alignment (e.g., using ld -z max-page-size=0x4000) to improve compliance with Android requirements and avoid runtime warnings or errors.
Thank you for maintaining SDK v4.18 — it’s critical for legacy drone support.
Looking forward to your response.
Best regards, Vlad
List of .so files with warning
1. libDJIFlySafeCore.so
2. libdjsqlcipher.so
3. libDJIWaypointV2Core.so
4. libutmiss_jni.so
5. libFR.so
6. libDJIUpgradeCore.so
7. libDJICSDKCommon.so
8. libSdkv4clx_clx.so
9. libDJISDKLOGJNI.so
10. libSDKRelativeJNI.so
11. libuv2.so
12. libdjvideo.so
13. libDJIMOPJni.so
14. libLiveviewARCore.so
15. libDJIUpgradeJNI.so
16. libFlyForbid.so
17. libdjfis_jni.so
18. libfsjni.so
Agent comment from YIGUI LIU in Zendesk ticket #154530:
Dear Developer,
We regret to inform you that after confirmation, MSDK v4 will no longer receive iterative updates, and it may not be adapted for Android 15 in the future. We sincerely apologize for any inconvenience this may cause you.
Best Regards,
DJI Innovations SDK Technical Support Team
°°°
It would be great for this issue to be taken seriously as without an SDK update to fix this alignment issue, developers will soon no longer be able to release any updates to their MSDKv4 apps in the google play store: https://android-developers.googleblog.com/2025/07/transition-to-16-kb-page-sizes-android-apps-games-android-studio.html
so, v4 sdk will no any update???
it is an so bad news for dji developers.
Do you have any plans for updating of the SDK? Our apps really need it. @dji-dev
这是来自QQ邮箱的自动回复邮件。 您好,您的邮件我已收到。
Any news about it?
We really need support for 16KB page size by this SDK. I'm currently using the latest version (4.18) and cannot ship updates to the Play store anymore. This essentially prevents me from shipping any further security updates or features, or submitting new apps that use the V4 DJI SDK. It also means that any new developers out there that want to publish an app to support most of the DJI drones won't be able to do it.
If it can't be part of a standard SDK update, are there some instructions on how to build those dependencies with 16KB page size ourselves? It's probably not possible since those packages are closed source, meaning only DJI can fix it.
It shouldn't be too much of a change. Just the below need to compiled with the right options.
ld -z max-page-size=0x4000
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJIFlySafeCore.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJIWaypointV2Core.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libFR.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJIUpgradeCore.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJICSDKCommon.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libSdkyclx_clx.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJISDKLOGJNI.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libSDKRelativeJNI.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libyuv2.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libdjivideo.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJIUpgradeJNI.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libFlyForbid.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libdjifs_jni.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libsfjni.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libDJIMOP.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libUpgradeVerify.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libFRCorkscrew.so"
- ArchivePathEntry: pathPrefix="", path="/lib/arm64-v8a/libGroudStation.so"
Please DJI, help us out! V5 SDK isn't fully compatible with so many of the drones.