如何使用shell命令启动Genymotion设备?

50

我需要通过shell命令启动Genymotion,请问是否有可能做到这一点?


快速访问Genymotion常见问题解答,请点击以下链接:https://www.genymotion.com/#!/support?chapter=start-virtual-devices-command-prompt#faq - olyv
4个回答

71

Genymotion提供了一个名为Genymotion Shell的Shell。但是目前还不能使用它来启动虚拟机。

不过,您可以通过以下命令启动Genymotion虚拟机:

player --vm-name <VM id | VM name>

此命令将启动Genymotion播放器,让您可以访问所有Genymotion增强小部件(GPS、电池、旋转等)、屏幕缩放、渲染等功能,就像标准图形用户界面一样。

如果您想在没有增强功能的情况下使用Genymotion虚拟机,则可以通过VirtualBox命令行启动它,如下所示:

VBoxManage startvm gui <VM id | VM name>

您可以使用以下命令找到VM id:

VBoxManage list vms

它会以这种格式显示您的VirtualBox机器列表:name {id}

更新

从Genymotion 2.5.0开始,您可以使用命令行工具管理所有Genymotion设备。使用此工具,您可以创建、启动、停止、删除、推送文件、刷写设备等操作...以下是一个简单的示例,用于创建并启动设备:

gmtool admin create "Google Nexus 5 - 4.4.4 - API 19 - 1080x1920" myNexus
gmtool admin start myNexus

此功能仅适用于付费许可证。


检查更新。我已经为您提供了正确的命令行,以便像GUI上那样启动VM。 - eyal-lezmy
2
我在Mac上使用Genymotion。我找不到“player”命令。我该如何找到它? - David
您的提示需要位于Genymotion文件夹中,其中包含“player”二进制文件。我不知道在Mac上应该放在哪里。 - eyal-lezmy
1
@David 在应用程序包中找到它。 - xbtsw
7
玩家所在位置为Mac上的/Applications/Genymotion.app/Contents/MacOS/player。 - Chris.Zou
显示剩余7条评论

22

针对Windows系统。

运行以下命令获取可用虚拟设备列表:

<Genymotion installer path>\genyshell -c "devices list"

运行以下命令之一来启动虚拟设备:

<Genymotion installer path>\player --vm-name "<virtual device name>"

2019年5月8日更新: 我已经为基于bash的genymotion cli创建了一个简单的包装器。链接到Github 在这里


3
它也适用于Linux(当然,你需要改变斜杠)。 - tigerjack
1
截至今天,这是唯一的通过命令行运行设备而不需要支付许可证费用的方法。+1 - xHocquet
1
停止虚拟机:player -n $NAME -x - gavenkoa
Github链接已失效。 - That Brazilian Guy
修正后的链接是 https://github.com/yshinkarev/my-bash/blob/master/android/genymotion_tools.sh。 - Yura Shinkarev

20
截至Genymotion 2.6.0(2015年12月),似乎他们已将player可执行文件移动为player.app
在OSX上,您可以像这样启动所需的VM:
# First, get a list of the VM's you have installed
VBoxManage list vms
# Returns something like "5.0.0 - API 21 - 768x1280" {091d022d-6a7b-4475-845f-7a6e06024fb6}

复制虚拟机ID,例如091d022d-6a7b-4475-845f-7a6e06024fb6,然后像这样再次使用:

# Launch a specific VM
open -a /Applications/Genymotion.app/Contents/MacOS/player.app --args --vm-name '091d022d-6a7b-4475-845f-7a6e06024fb6'

0

除了@eyal-lezmy的答案之外,这是我在当前的Genymotion 3.2.1中所做的:

  • 列出可用设备
gmtool admin list

输出示例

 State    |   ADB Serial    |                UUID                |      Name
----------+-----------------+------------------------------------+---------------
      Off |         0.0.0.0 |6aa30cf2-217a-4a27-9d29-13e41a351bd7| Google Pixel 3
      Off |         0.0.0.0 |8ab62c9c-ef26-4a6b-870c-8db4fa54ed76| Samsung Galaxy S9
  • 启动设备
player -n 8ab62c9c-ef26-4a6b-870c-8db4fa54ed76

可以在Genymotion Shell文档中找到查找二进制文件位置的说明。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接