【问题标题】:Android Emulator Auto Accept Welcome PromptsAndroid 模拟器自动接受欢迎提示
【发布时间】:2018-03-02 23:52:51
【问题描述】:
我正在设置一个 CI 服务器,它可以动态创建 Android AVD 以运行自动化 UI 测试。这很好用,但是由于每次运行作业时 CI 都会获得带有全新图像的全新模拟器,所以我得到了所有 Android 的欢迎和第一次运行,你是否同意提示。这些破坏了我的测试。
无论如何让模拟器自动接受或关闭所有这些提示?
这里有一些例子:
【问题讨论】:
标签:
android
automation
android-emulator
startup
avd
【解决方案1】:
经过大量挖掘和实验,我找到了解决上述两个提示的方法。没有一个包罗万象的解决方案,但它就是一块一块的。
铬
在第一次启动 Chrome 之前,用 adb 运行这个命令:
./adb shell 'echo "chrome --disable-fre --no-default-browser-check --no-first-run" > /data/local/tmp/chrome-command-line'
基本上,这会将文件写入 Chrome 将在启动时检查的已知位置。遵守命令中指定的所有标志,并且这些标志固有地禁用所有首次运行提示。 This link 很有帮助。
键盘(Gboard)
Android shell 有一个名为ime 的工具来管理设备上可用的输入法。默认情况下,在较新的英语设备上,输入法是 LatinIME。这是 Gboard 的拉丁文实现,提供了上面显示的法律提示。
最简单的解决方案是选择另一个没有此提示的键盘。我用的是旧的软键盘:
./adb shell 'ime set com.example.android.softkeyboard/.SoftKeyboard'
您可以获得可用键盘的列表,如下所示:
./adb shell 'ime list -a -s'
最终结果