【问题标题】:Running AOSP on emulator在模拟器上运行 AOSP
【发布时间】:2017-10-12 18:52:37
【问题描述】:

为了熟悉 AOSP,我的目标是构建一个镜像并在模拟器上运行它,遵循 official documentation

设置好 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

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

我在没有任何专有二进制文件和 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

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]

【问题讨论】:

  • 您是否尝试过构建特定设备?请参阅this 可用设备名称列表。
  • @DuduLev 我也尝试为“angler”(Nexus 6P)构建,但在运行模拟器时遇到了同样的问题
  • @Onik 与sdk-eng的结果相同
  • 嗯...你能shell进入模拟器吗?如果是,请查看logcatdmesg 输出。 service list 命令提供了多少服务?
  • @Onik 我认为编译成功是因为make 命令末尾的绿色消息build completed successfully

标签: android android-source


【解决方案1】:

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

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

$ 模拟器 -verbose

【讨论】:

  • 请在您的答案中添加更多详细信息,这应该只是对问题的评论
猜你喜欢
  • 1970-01-01
  • 2013-04-04
  • 2020-06-20
  • 1970-01-01
  • 2020-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-19
相关资源
最近更新 更多