如何在看不到 emulator.exe 窗口的情况下启动 Android 虚拟设备

问题描述 投票:0回答:4

我想创建一个快捷方式来启动具有特定参数的特定 AVD。如果我使用

start emulator.exe -avd myavd
创建批处理文件,则 emulator.exe 命令窗口将在设备启动后显示并保留。关闭 emulator.exe 窗口将关闭设备。

如何启动设备而不会像 AVD Manager 或 Eclipse 那样看到此窗口?

command-line android-emulator
4个回答
3
投票

创建此 java,替换您想要的 avd 的详细信息:

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class AVDs
{       
    public static void main(String[] args) throws IOException
    {
        List<String> avdCmd = new ArrayList<String>(args.length + 1);
        avdCmd.add("C:\\Users\\Steve\\AppData\\Local\\Android\\sdk\\tools\\emulator.exe");
        for (String cmdarg: args)
        {
            avdCmd.add(cmdarg);
        }
        ProcessBuilder launch = new ProcessBuilder();
        launch.inheritIO().command(avdCmd).start();
    }
}

然后使用它作为您的快捷方式:

"C:\Program Files\Java\jre1.8.0_40\bin\javaw.exe" -cp "S:\ADT workspace\AVDs\bin" AVDs -timezone Europe/London -avd Lollipop -scale 0.5

替换您的类路径,或者如果不需要则将其删除。确保使用 javaw 的路径,而不仅仅是使用 java。


1
投票

我找到了一个简单的解决方法,使用 SilentCMD

创建批处理文件,在我的例子中,我的 AVD 称为“PIXEL_MARSHMALLOW_6”,因此我的批处理称为 emulator_marshmallow.cmd

REM emulator_marshmallow.cmd    
emulator @PIXEL_MARSHMALLOW_6

奔跑

c:\>SilentCMD emulator_marshmallow.cmd

这将运行模拟器并且隐藏 cmd.exe 窗口。 顺便说一句,我在这里找到了许多其他实用程序,例如 SilentCMD:https://www.raymond.cc/blog/hidden-start-runs-batch-files-silently-without-flickering-console/


0
投票

据我所知你不能。即使您从 Windows 运行对话框运行 emulator -avd Nexus_One,也会打开类似命令行的窗口。我看不到任何隐藏此选项的选项,例如静默模式(运行 emulator -help 显示可用选项)。 Eclipse 有自己的内置命令行,因此您不会看到另一个窗口。


0
投票

您可以使用以下 powershell 命令启动模拟器,而无需显示命令窗口:

Start-Process "emulator" -ArgumentList "-avd {YourAVD}" -WindowStyle Hidden

您只需创建一个包含此命令的

.ps1
文件(powershell 文件)即可启动模拟器。

© www.soinside.com 2019 - 2024. All rights reserved.