在模拟器上运行AOSP

sda*_*bet 9 android android-source

为了熟悉AOSP,我的目标是在官方文档之后构建映像并在模拟器上运行它.

设置Ubuntu 16.04 VM后,我使用以下命令:

repo init -u https://android.googlesource.com/platform/manifest
repo sync
source build/envsetup.sh
lunch full-eng
make -j8
emulator
Run Code Online (Sandbox Code Playgroud)

编译工作正常,模拟器启动但其屏幕保持空白.控制台中没有特定的错误跟踪.

我没有使用任何专有二进制文件,也使用Nexus 5二进制文件,但它没有改变任何东西.

我也试过lunch aosp_arm-eng但结果相同.

我错过了什么?

我可以成功shell进入模拟器.在dmesg输出中我注意到以下错误跟踪:

[   23.952504] init: Failed to bind socket 'pdx/system/vr/display/client': No such file or directory
[   23.954517] init: Failed to bind socket 'pdx/system/vr/display/manager': No such file or directory
[   23.956460] init: Failed to bind socket 'pdx/system/vr/display/vsync': No such file or directory
Run Code Online (Sandbox Code Playgroud)

并且service list命令的输出是:

generic:/ # service list
Found 10 services:
0   media.resource_manager: []
1   media.player: []
2   media.camera: []
3   media.sound_trigger_hw: []
4   media.radio: []
5   media.aaudio: []
6   media.audio_policy: []
7   netd: []
8   media.audio_flinger: []
9   batteryproperties: [android.os.IBatteryPropertiesRegistrar]
Run Code Online (Sandbox Code Playgroud)

Sam*_*T01 -2

为 aosp_x86_64 或 arm 构建。那么应该可以工作了!其他图像不再支持在模拟器上运行。它们适用于各自的设备。arm 和 x86/x86_64 应该在模拟器上工作,因为它们本质上是通用的。

编辑:刚刚看到您尝试运行 aosp_arm_eng,在这种情况下,您介意在使用以下命令运行模拟器后发布结果吗?

$ 模拟器-详细

  • 请在您的答案中添加更多详细信息,这应该只是对问题的评论 (2认同)