Delphi Tokyo 10.2.3无法编译Android应用问题求助
解决Delphi Tokyo 10.2.3编译Android项目立即终止的问题
作为有多年Windows开发经验刚转Android的开发者,遇到这种编译秒终止的情况确实挺闹心的——我之前帮不少开发者排查过Delphi Tokyo版本的Android编译问题,给你几个针对性的排查和解决方向:
先确认开发环境版本的适配性
Delphi Tokyo 10.2.3对Android开发套件的版本卡得很严,你用的Android SDK 24.3.3是兼容的,但要配套对:- Java必须是JDK 1.8(绝对不能用1.9及以上版本,这个版本的Delphi完全不支持)
- NDK一定要用官方推荐的
NDK r10e,这是和SDK 24、Delphi 10.2.3完美适配的版本 - 还要检查SDK里是否装全了Android 7.0(API 24)的必要组件,比如SDK Platform、Sources for Android SDK、Intel x86 Atom System Image这些,缺组件也会导致编译直接终止
核对Delphi的环境路径配置
打开Delphi的Tools > Options > Deployment > SDK Manager,逐一检查:- JDK路径必须指向JDK 1.8的安装根目录,路径里不能有中文、空格或者特殊字符(比如
C:\Program Files这种带空格的路径,建议把JDK装到C:\Java\jdk1.8.0_xxx这类纯英文无空格的路径) - SDK路径要准确指向你的Android SDK根目录,确认根目录下的
platforms\android-24文件夹存在 - NDK路径同理,指向
NDK r10e的根目录,避免特殊字符
- JDK路径必须指向JDK 1.8的安装根目录,路径里不能有中文、空格或者特殊字符(比如
检查示例项目的配置细节
打开出问题的第二、第三个项目,进入Project > Options > Android:- 确认
Target Platform选的是Android 32-bit,且SDK Version设置为Android 7.0 (API 24),别选错成其他API版本了 - 检查
Application标签下的包名,必须符合Android规范:全小写、用域名反转格式(比如com.embarcadero.homeproject),不能有大写字母或特殊符号 - 有些示例项目需要基础权限,比如
INTERNET,去Permissions标签下确认是否勾选了必要权限
- 确认
清理编译缓存试试
Delphi的编译缓存偶尔会抽风导致奇怪问题,按这个步骤清一下:- 完全关闭Delphi
- 删除项目目录下的
*.dcu、*.apk以及*.bin文件夹 - 找到Delphi的缓存目录(默认是
C:\Users\<你的用户名>\AppData\Roaming\Embarcadero\BDS\19.0),删掉里面的Cache和Repository文件夹 - 重新打开Delphi,重新编译项目
打开详细日志定位具体问题
默认的编译提示太简略,你可以开启 verbose 日志:
进入Tools > Options > Environment Options > Compiling,勾选Show command line和Verbose选项,然后重新编译。这样能看到每一步的执行细节,比如是NDK编译代码出错,还是SDK打包阶段失败,根据日志就能精准定位问题了
内容的提问来源于stack exchange,提问作者Kenneth Rundt
相关产品推荐
相关产品推荐

