在 Ubuntu 18 上启动 Android 模拟器时出错

Jos*_*ice 10 ubuntu android docker

我正在尝试在 Jenkins CI 上启动 Android 模拟器,但启动从未完成。在 CI 上,该命令在基于ubuntu:18.04. 我正在使用以下命令启动模拟器:

/opt/android-sdk-linux/emulator/emulator -no-audio -no-window -delay-adb \
    @Pixel_C_API_25 &
Run Code Online (Sandbox Code Playgroud)

然后我等待模拟器完成:

adb wait-for-device
Run Code Online (Sandbox Code Playgroud)

在我的开发人员机器(macOS 10.14.6)上,模拟器完成启动并adb wait-for-device返回,但在 CI 上,模拟器永远不会完成启动。日志输出的相关部分在这里:

Starting emulator
Waiting for emulator
* daemon not running; starting now at tcp:5037
statvfs('/home/ec2-user/.android/avd/Pixel_C_API_25.avd/snapshots/default_boot/ram.img') failed: No such file or directory
### WARNING: could not find /usr/share/zoneinfo/ directory. unable to determine host timezone
emulator: WARNING: encryption is off
Your emulator is out of date, please update by launching Android Studio:
 - Start Android Studio
 - Select menu "Tools > Android > SDK Manager"
 - Click "SDK Tools" tab
 - Check "Android Emulator" checkbox
 - Click "OK"

* daemon started successfully
### WARNING: could not find /usr/share/zoneinfo/ directory. unable to determine host timezone
Sending interrupt signal to process
Terminated
script returned exit code 143
Run Code Online (Sandbox Code Playgroud)

我认为“模拟器已过时”警告是一个红鲱鱼,因为它不会在本地对我造成问题。我认为更可能的问题是:

statvfs('/home/ec2-user/.android/avd/Pixel_C_API_25.avd/snapshots/default_boot/ram.img') failed: No such file or directory
Run Code Online (Sandbox Code Playgroud)

但是我一直无法找到有关导致此问题或解决此问题的原因的信息。该ram.img文件在本地存在。

我已经尝试过基于以下系统映像的 AVD。以前,与 x86 相关的图像不支持 x86 似乎存在错误,但我不再收到该错误。相反,他们都给出了上述ram.img错误:

  • system-images;android-25;google_apis;arm64-v8a
  • system-images;android-25;google_apis;armeabi-v7a
  • system-images;android-28;google_apis;x86_64
  • system-images;android-28;google_apis;x86
  • system-images;android-28;default;x86_64

在每种情况下,我都使用类似于以下的命令创建 AVD:

sdkmanager --install "system-images;android-25;google_apis;armeabi-v7a"
avdmanager create avd --force --name Pixel_C_API_25 --abi google_apis/armeabi-v7a --package "system-images;android-25;google_apis;armeabi-v7a" --device "pixel_c"
Run Code Online (Sandbox Code Playgroud)

有没有人成功获得 Android 模拟器以在 Ubuntu 18 上启动,如果是,您使用的是哪个系统映像?