应用未出现在Android模拟器

时间:2016-05-28 10:33:23

标签: cordova android-emulator webstorm

我正在Mac上使用WebStorm(PhoneGap / Cordova App)创建一个PhoneGap应用程序。我遇到的问题是该应用程序没有出现在Android模拟器中。模拟器出现,但带有“android”一词的屏幕不会更改以显示应用程序:

enter image description here

我已按照Mac上Cordova site for Android设置的说明进行操作:

enter image description here

这是模拟器设置:

enter image description here

我已尝试根据对此问题的回答和评论激活和停用“使用主机GPU” - Android emulator shows nothing except black screen and adb devices shows "device offline"

当我选择“浏览器”作为配置中的平台时,应用程序显示并正常工作:

enter image description here

任何想法我还需要做什么?

编辑1 :这是在@Dar建议的详细模式下运行时的日志信息

  

运行命令:/ Users / username / Documents / Projects / harkme / platforms / browser / cordova / run --emulator

     

运行@ http://localhost:8000/index.html

的静态文件服务器      

CTRL + C关闭

     

ANDROID_HOME =的/ usr /本地/地窖/ Android的SDK / 24.3.4 /

     

JAVA_HOME = / System / Library / Java / JavaVirtualMachines / 1.6.0.jdk / Contents / Home>未指定模拟器,默认为AVD_for_Galaxy_Nexus_by_Google

     

等待模拟器...

     

模拟器:警告:VM堆大小设置低于硬件指定的最小值128MB

     

模拟器:警告:将VM堆大小设置为256MB

     

启用Hax

     

Hax ram_size 0x40000000

     

HAX正在运行,模拟器以快速virt模式运行。

     

端口5554上的控制台,端口5555上的ADB

编辑2

@Dar提到的启用HAXM可以大大加快模拟器的速度,几秒钟之后“android”页面消失,显示桌面但未安装应用程序。但是,我发现如果我将应用程序从构建文件夹拖到桌面上,则应用程序已安装。应用程序文件( android-debug.apk )位于:

平台/机器人/建造/输出/ APK

此过程实际上(意外地)改进了我的工作流程,因为我现在只是构建应用程序并将其拖到模拟器上,而不是在更改测试应用程序后从WebStorm执行 PhoneGap / Cordova运行

我还将模拟器设置更改为:

enter image description here

编辑3:

有时启动模拟器时会出现以下错误

  

未知hax vcpu返回1

如果它继续这样做,目前绕过它的唯一方法是按照此处的建议重新启动Mac - https://code.google.com/p/android/issues/detail?id=201694

1 个答案:

答案 0 :(得分:1)

很抱歉,这应该是某种评论,但我仍然没有足够的分数。

在不知道模拟器在幕后记录什么的情况下,我不能超越以下说明。

如果愿意,请更新我们。

请尝试在终端中执行以下操作。我没有亲自使用过WebStorm,但是文档说该终端可以在IDE中使用。

这也假设您正在使用cordova进行开发。如果您使用了ionic或phonegap,请相应地更改命令。

  1. cordova build emulator --verbose
  2. 检查应用程序是否成功构建。

    1. cordova run emulator --verbose
    2. 检查模拟器是否成功定义了其属性,构建应用程序并将其部署到模拟器。

      另一个问题是加载仿真器需要很长时间。我建议您在Android SDK Manager中安装HAXM。 HAXM代表英特尔硬件加速执行管理器。它将在速度方面真正提升您的仿真器性能。

      另外,也许您可​​以尝试在SD卡大小中输入一些值。 也许512 MiB就足够了。

      如果所有其他方法都失败,请删除模拟器并创建一个新模拟器。使用cordova run android --target=emulatorname

      定位模拟器

      同样,如果您能够向我们提供日志信息,请更新。