【问题标题】:Can I select a particular Android Device Emulator from AVD using Apache Cordova?我可以使用 Apache Cordova 从 AVD 中选择特定的 Android 设备模拟器吗?
【发布时间】:2014-07-09 18:00:27
【问题描述】:

在使用 Cordova CLI 从 Android 设备管理器 (AVD) 中选择特定的模拟设备时,有没有办法?

我正在同时开发平板电脑应用和智能手机应用,由于外形尺寸和屏幕分辨率不同,需要切换到不同类型的模拟器?

我知道这不是一个特定的编码问题,但也许我可以在终端中运行一些 Cordova 代码以使仿真更具体,而不是:

cordova emulate android

这似乎从堆栈中挑选出第一个模拟器。

【问题讨论】:

    标签: android cordova android-emulator avd


    【解决方案1】:

    如果您运行以下命令,您将获得所有可用设备的列表:

    cordova run android --list
    

    接下来,您可以通过运行来模拟您的应用:

    cordova run android --target="<Device_Name>"
    

    【讨论】:

      【解决方案2】:

      像这样使用target 参数:

      cordova emulate --target=emulator-5554 android
      

      要获取您的模拟器的设备名称(本例中为“emulator-5554”),请运行/platforms/android/cordova/lib/list-started-emulators.bat

      【讨论】:

      • 谢谢基思。您的答案看起来很有希望,但我似乎无法在 MACOSX 中运行 bat 文件。有没有办法做到这一点?我不认为我可以从 AVD 中获取特定的设备名称?
      • 你这个开膛手!从 AVD 管理器获得名称。尚未准备好批处理文件:|现在,如果只有模拟器工作得更快。 Genymotion 是更好的选择吗?
      • 啊,是的,批处理文件仅适用于 Windows。我认为这是在 Windows 上获取设备名称的唯一方法,因为我似乎无法通过 AVD Manager 找到它。太糟糕了,我也不想使用批处理文件!
      • 我知道的不够多,无法帮助您提高模拟器性能,但也许this 会有所帮助。
      • 需要注意的是,emulator-5554 适用于已经启动的 AVD(也可以与 adb devices 一起列出)。但是,当您要定位未启动的 AVD 时,可以使用 AVD Manager 中的名称。
      【解决方案3】:

      对我来说:

      如果你使用 OSX,你可以按照说明在 /platforms/android/cordova/lib/ 中打开 shell,然后编写下一条命令:

      ./list-emulator-images
      

      获得模拟器镜像名称后,

      cordova emulate android --target="the name"
      

      【讨论】:

        【解决方案4】:

        *版主拒绝了我的编辑,并说我应该分享作为答案 -

        在 Linux 上(从您的项目文件夹中)使用以下命令:

        /platforms/android/cordova/lib/list-started-emulators
        

        (请注意,命令中没有.bat),然后查找控制台输出,例如emulator-5554。然后如上运行:

        cordova emulate --target=emulator-5554 android
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-10-25
          • 1970-01-01
          • 2018-11-24
          • 2014-06-16
          • 1970-01-01
          • 1970-01-01
          • 2018-01-04
          相关资源
          最近更新 更多