Delphi 10.4集成Android SDK31/NDK25遇问题,求技术解决方案
Delphi 10.4 适配 Android SDK 31 集成方案
一、解决 NDK 25 与 IDE 向导不兼容问题
Delphi 10.4 的 Android 配置向导仅适配旧版 NDK(如 r21),而 NDK r25 已移除arm-linux-androideabi-ld.exe、arm-linux-androideabi-strip.exe及platforms目录,无法通过向导正常识别,可直接修改注册表完成配置,无需依赖向导:
- 打开注册表编辑器(
regedit.exe),定位至路径:HKEY_CURRENT_USER\Software\Embarcadero\BDS\21.0\Platforms\Android - 新增或修改以下字符串类型键值:
AndroidSdkRoot:设置为你的 SDK 根目录D:\PlatformSDKs\android-sdk-windowsAndroidNdkRoot:设置为 NDK r25b 路径D:\PlatformSDKs\android-ndk-r25bAndroidNdkVersion:设置为25.2.9519653(可从 NDK 目录下source.properties文件中获取对应版本号)AndroidApiLevel:设置为31AndroidBuildToolsVersion:设置为30.0.3(高版本 build-tools 移除了dx.bat,Delphi 10.4 不兼容)
- 补充 NDK 工具路径(适配 NDK r25 的工具改名情况):
- 创建
AndroidNdkLinker键,值为D:\PlatformSDKs\android-ndk-r25b\toolchains\llvm\prebuilt\windows-x86_64\bin\ld.lld.exe - 创建
AndroidNdkStrip键,值为D:\PlatformSDKs\android-ndk-r25b\toolchains\llvm\prebuilt\windows-x86_64\bin\llvm-strip.exe
- 创建
二、解决 dx.bat 执行错误(NDK21 + SDK31 场景)
若坚持使用 NDK21 搭配 SDK31,核心问题是高版本 build-tools 移除了dx.bat,需调整 build-tools 版本:
- 通过
cmdline-tools执行命令sdkmanager "build-tools;30.0.3",安装 30.0.3 版本的 build-tools - 打开 Delphi IDE 的
Tools > Options > Deployment > Android,将Build Tools Version改为30.0.3 - 兼容 Delphi 自带 jar 包:从 SDK31 的
platforms\android-31\android.jar复制文件,覆盖 Delphi 自带的C:\Users\Public\Documents\Embarcadero\Studio\21.0\CatalogRepository\AndroidSDK-2525-21.0.38860.1461\platforms\android-25\android.jar;或在注册表中新增AndroidPlatformJar键,值设为 SDK31 的 android.jar 路径
三、跳过配置向导
修改完上述注册表项后,重启 Delphi IDE 即可自动读取配置。若仍弹出向导,可在同一注册表路径下新增 DWORD 类型键AndroidSetupCompleted,设置值为1,即可跳过向导流程。
内容的提问来源于stack exchange,提问作者TomR
相关产品推荐
相关产品推荐

