如 previous questions 中所述可知Android虚拟设备默认保存在Documents and Settings\user\.android
路径下。目前我有一个 Jenkins 构建服务器,它作为系统帐户运行 Jenkins 进程。当使用Android Emulator Plugin时对于 Jenkins,如果我尝试通过“AVD 名称”选择模拟器,我将无法访问在我的用户帐户(我将其称为 myUserAccount)下设置的 AVD 设备。所以AVD设备当前保存在
C:\Users\myUserAccount\.android\avd\x86NexusS
并且我会收到一个异常,指出系统在系统路径下找不到 avd:
FATAL: C:\WINDOWS\system32\config\systemprofile\.android\avd\x86NexusS.ini(系统找不到指定的路径)
有几种方法可以解决这个问题:
- (首选)找到一种方法来访问在系统帐户下的 myUserAccount 下创建的 AVD? **有人知道如何做到这一点吗? **
- 如何将我的用户切换到“系统”帐户以创建 AVD 配置文件?
- (最坏的情况)以 myUserAccount 身份运行 Jenkins 构建过程 - 如果其他用户想要更改构建服务器,这是很困惑且不可扩展的。
最佳答案
AVD默认搜索其ANDROID_SDK_HOME
下的设备,该设备指向%HOME%
。您可以通过创建指向您的 C:\Users\myUserAccount
的 ANDROID_SDK_HOME
jenkins 环境变量来让 jenkins 找到您现有的设备配置。
但是我发现这有点脆弱,我可能会让您的用户和 jenkins 使用第三方位置(例如 D:\JenkinsData\AVD
)来存储这些文件。
关于android - 如何从 CI 的服务帐户访问 Android 虚拟设备 (AVD)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18237071/