Android模拟器运行Delphi应用报错:无法保留地址空间求助
解决Delphi 11.2在Android Studio模拟器中运行应用的gdbserver内存分配错误
错误信息:
Error running lib/gdbserver: couldn't reserve 655360 bytes of adresse space at 0x8000 for "/data/app/com.embarcadero.Project2..."
适用环境:
Delphi 11.2 Architect、Android Studio Dolphin 2021.3.1 Patch 1、Android 9模拟器
以下是经过验证的解决方法:
调整模拟器内存配置
打开Android Studio的AVD管理器,找到目标模拟器:- 点击右侧的编辑图标(铅笔样式)
- 展开
Show Advanced Settings - 把
RAM值调低(比如从2048MB改成1536MB),VM Heap设为256MB以内 - 保存后重启模拟器再试
关闭Delphi的GDB调试选项
既然真机运行正常,可尝试禁用Delphi里的GDB相关设置:- 打开项目的
Project Options - 进入
Debugging > Android Debugger - 取消勾选
Use GDB,或者把Debugger Type改成None(Debug模式下需手动改,Release模式默认关闭) - 重新编译应用并运行到模拟器
- 打开项目的
修改模拟器内核启动参数
针对Android 9模拟器,修改内核参数调整内存布局:- 在AVD管理器里选中模拟器,点
Down Arrow > Show on Disk - 找到并打开
config.ini文件 - 添加或修改以下内容:
qemu.cmdline=-mem-path /dev/shm -mem-prealloc -smp cores=2 - 保存文件后重启模拟器
- 在AVD管理器里选中模拟器,点
更新模拟器组件
打开Android Studio的SDK Manager,检查更新Android Emulator到最新版,同时确保Android 9(API 28)的系统镜像完整且是最新版本,旧镜像可能存在内存兼容问题
内容的提问来源于stack exchange,提问作者Hamza KAABECHE
相关产品推荐
相关产品推荐

