Var*_*van 2 android-emulator android-source
我正在尝试在模拟器上运行 AOSP(oreo 8.1) 构建。
我使用以下命令来构建 AOSP。
source build/envsetup.sh
lunch aosp_arm-eng
make -j4
Run Code Online (Sandbox Code Playgroud)
我的构建成功了。现在我正在尝试使用以下命令在模拟器上运行。
emulator
Run Code Online (Sandbox Code Playgroud)
模拟器启动并显示以下警告消息。
无法自动检测 ADB 二进制文件。在扩展设置页面中添加 ADB 的自定义路径之前,某些模拟器功能将无法使用。
成功启动后,模拟器上显示“系统用户界面没有响应”消息,模拟器运行速度也很慢。
非常感谢解决此问题的任何帮助。
emulator: WARNING: system partition size adjusted to match image file (2050 MB > 200 MB)
emulator: WARNING: encryption is off
main-loop: WARNING: I/O thread spun for 1000 iterations
Run Code Online (Sandbox Code Playgroud)
它经常发生 - 特别是在运行消耗 CPU 的仿真的慢速机器上,仿真器最初会加载到System UI isn't responding显示警报的状态。这并不一定意味着设备不工作;通常情况下,警报可以被解除,从那时起设备将完全正常运行。
我不确定这里要解决的确切问题是什么。尽管如此,假设您在 CI 上运行并且 - 除了模拟器的缓慢之外,还希望克服System UI isn't responding启动完成时出现的警报(如标题所示) - 我可以建议这个 bash 脚本(要点):
#!/bin/bash
echo ""
echo "[Waiting for launcher to start]"
LAUNCHER_READY=
while [[ -z ${LAUNCHER_READY} ]]; do
UI_FOCUS=`adb shell dumpsys window windows 2>/dev/null | grep -i mCurrentFocus`
echo "(DEBUG) Current focus: ${UI_FOCUS}"
case $UI_FOCUS in
*"Launcher"*)
LAUNCHER_READY=true
;;
"")
echo "Waiting for window service..."
sleep 3
;;
*"Not Responding"*)
echo "Detected an ANR! Dismissing..."
adb shell input keyevent KEYCODE_DPAD_DOWN
adb shell input keyevent KEYCODE_DPAD_DOWN
adb shell input keyevent KEYCODE_ENTER
;;
*)
echo "Waiting for launcher..."
sleep 3
;;
esac
done
echo "Launcher is ready :-)"
Run Code Online (Sandbox Code Playgroud)
该脚本等待启动器准备就绪并处于焦点状态,并自动解除系统响应警报。
然而,它并没有解决模拟器的迟钝问题。
| 归档时间: |
|
| 查看次数: |
4094 次 |
| 最近记录: |