Delphi 11.1 编译Android 64位报错?手把手教你用sdkmanager.bat更新SDK到26.1.1

张开发
2026/4/21 9:28:51 15 分钟阅读

分享文章

Delphi 11.1 编译Android 64位报错?手把手教你用sdkmanager.bat更新SDK到26.1.1
Delphi 11.1编译Android 64位应用报错解决方案命令行更新SDK实战指南当你在Delphi 11.1中尝试编译Android 64位应用时突然弹出一个令人头疼的错误提示——AndroidSDK26.1.1_64bit.sdk文件不存在。这不是个例而是许多开发者升级到Delphi 11.1后遇到的典型问题。本文将带你深入理解问题根源并提供一套不依赖Android Studio的完整解决方案。1. 问题诊断与环境准备1.1 错误现象分析典型的错误提示会显示类似以下内容C:\Users\[用户名]\AppData\Roaming\Embarcadero\BDS\22.0\AndroidSDK26.1.1_64bit.sdk文件不存在实际上你的系统可能只安装了Android SDK 25.2.5版本这正是导致64位编译失败的根源。1.2 所需工具检查在开始之前请确保你已准备好Delphi 11.1确认安装版本正确Java开发工具包推荐JDK 8或11命令行工具Windows命令提示符(CMD)或PowerShell原始SDK目录通常位于C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\提示如果找不到sdkmanager.bat文件可能需要重新安装Delphi或单独下载Android SDK工具包。2. 创建新的SDK环境2.1 建立独立SDK目录为避免与现有环境冲突建议新建一个SDK根目录。例如mkdir C:\Android\SDK_26.1.1目录选择应考虑磁盘空间完整SDK约需10-15GB路径简洁避免包含空格或特殊字符权限设置确保有完全控制权限2.2 定位sdkmanager.bat原始SDK目录结构通常如下AndroidSDK-2525-22.0.44500.8973 ├── tools │ └── bin │ └── sdkmanager.bat └── ...快速定位技巧在文件资源管理器中导航至原始SDK目录在地址栏输入cmd并按回车直接打开该路径的命令行窗口3. 命令行更新SDK详解3.1 sdkmanager.bat核心命令基本命令格式sdkmanager.bat [选项] [包路径]常用选项对照表选项功能描述示例--sdk_root指定SDK安装路径--sdk_rootC:\Android\SDK_26.1.1--list显示所有可用包sdkmanager.bat --list--list_installed显示已安装包sdkmanager.bat --list_installed--install安装指定包sdkmanager.bat platforms;android-313.2 完整安装命令推荐执行以下组合命令sdkmanager.bat --sdk_rootC:\Android\SDK_26.1.1 ^ platforms;android-31 ^ build-tools;32.0.0 ^ platform-tools ^ tools ^ emulator ^ extras;intel;Hardware_Accelerated_Execution_Manager ^ patcher;v4关键组件说明platforms;android-31Android 12S平台支持build-tools;32.0.0构建工具链platform-toolsadb等调试工具emulatorAndroid虚拟设备支持注意安装过程中需要接受许可协议按y键确认即可。网络状况会影响下载速度建议保持稳定连接。4. Delphi IDE集成配置4.1 添加新SDK路径在Delphi 11.1中配置新SDK的步骤打开Tools Options SDK Manager点击Add...按钮填写以下关键路径SDK路径新创建的SDK根目录如C:\Android\SDK_26.1.1NDK路径保留原始NDK路径通常无需更新Java路径指向有效的JDK安装目录4.2 验证安装结果成功配置后你应当能看到SDK Manager中显示26.1.1版本项目编译选项中出现Android 64位目标能够正常编译并生成APK文件常见问题排查JDK版本不匹配尝试切换JDK 8或11路径权限问题以管理员身份运行Delphi IDE缓存未更新清理项目并重新构建5. 高级技巧与最佳实践5.1 多版本SDK管理对于需要同时维护多个项目的开发者建议为每个主要Android API级别创建独立SDK目录使用环境变量动态切换SDK路径在项目文档中明确记录所需的SDK版本5.2 自动化脚本示例创建批处理文件update_sdk.bat实现一键更新echo off set SDK_ROOTC:\Android\SDK_26.1.1 set SDK_MANAGERC:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidSDK-2525-22.0.44500.8973\tools\bin\sdkmanager.bat %SDK_MANAGER% --sdk_root%SDK_ROOT% platforms;android-31 %SDK_MANAGER% --sdk_root%SDK_ROOT% build-tools;32.0.0 %SDK_MANAGER% --sdk_root%SDK_ROOT% platform-tools5.3 性能优化建议启用HAXM加速确保安装extras;intel;Hardware_Accelerated_Execution_Manager定期清理缓存删除SDK目录下的.temp文件夹离线模式下载ZIP包后使用--no_https选项安装6. 版本兼容性注意事项不同Delphi版本对Android SDK的支持存在差异Delphi版本推荐Android SDK版本最大支持API级别10.425.2.529 (Android 10)11.026.1.131 (Android 12)11.126.1.131 (Android 12)实际项目中遇到的一个典型情况当尝试使用API 32Android 12L时虽然SDK可以安装但Delphi 11.1的编译器可能无法完全支持新特性。这时就需要权衡是否降级使用API 31。

更多文章