【问题标题】:Application fails to deploy to Android Intel emulator on API 19 (Platform 4.4.2)应用程序无法部署到 API 19(平台 4.4.2)上的 Android 英特尔模拟器
【发布时间】:2014-05-05 12:36:58
【问题描述】:

问题:

更新:我已经能够将我的应用程序部署到 Android API 级别 10、15、17、18。所以这似乎是 API 19 的问题

当我尝试调试我的应用程序(MvvmCross“Hello World”应用程序)时,它不会在 Intel Atom (x86) 模拟器中启动,但应用程序确实会启动到 ARM (armeabi-v7a) 模拟器。尝试在 Intel Atom (x86) 模拟器中启动时,Visual Studio 2013 成功启动模拟器,构建应用程序,然后在构建后挂起并显示 Waiting for device...,但模拟器已启动并运行,响应迅速,并且似乎工作正常。一旦我关闭模拟器 Visual Studio 2013 / Xamarin 就会弹出这个错误:

详细信息只是说找不到模拟器 - 因此环境知道模拟器以及它何时运行以及何时不运行。


Visual Studio 2013 的输出 - 构建窗口

2>Build succeeded. 2> 0 Warning(s) 2> 0 Error(s) 2> 2>Time Elapsed 00:00:13.60 2> 2> 2> 2>Waiting for device..


环境

  • Windows 7 企业版
  • 带有 ReSharper 的 Visual Studio 2013 Professional
  • MvvmCross“Hello World”应用程序
  • Xamarin.Android

尽职调查

  • 在命令行中,当我运行adb devices 时,它显示模拟器已启动并正在运行。

  • 我关闭并重新启动了 Visual Studio 2013 和模拟器。

  • 我尝试先加载模拟器然后调试,但仍然遇到同样的问题。

  • 在我走到这一步之前,我遇到了未安装 HAXM 的问题,但 this 不是我遇到的问题。

  • 我检查了Xamarin setup instructions,并确认选中了支持的架构下的x86 复选框。我什至试着让它成为唯一的选择。

  • 我在 Xamarin 论坛和 found someone who claims to have it up and running (asked him how) 上搜索了解决方案,但没有找到我的问题的答案。

  • 我在 Stack Overflow 上搜索了此处的解决方案,但没有找到答案。
    thisthis 都不是我遇到的同一个问题。

  • 我检查了adb logcat,但我无法确定那里是否存在问题。以下文本块一直重复,直到我关闭模拟器。

    D/AndroidRuntime( 2182): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<< W/linker ( 2182): libdvm.so has text relocations. This is wasting memory and is a security risk. Please fix. D/AndroidRuntime( 2182): CheckJNI is ON D/dalvikvm( 2182): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2182): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2182): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2182): Added shared lib libnativehelper.so 0x0 D/dalvikvm( 2182): No JNI_OnLoad found in libnativehelper.so 0x0, skipping init D/dalvikvm( 2182): Note: class Landroid/app/ActivityManagerNative; has 179 unimplemented (abstract) methods E/memtrack( 2182): Couldn't load memtrack module (No such file or directory) E/android.os.Debug( 2182): failed to load memtrack module: -2 D/AndroidRuntime( 2182): Calling main entry com.android.commands.pm.Pm D/AndroidRuntime( 2182): Shutting down VM D/dalvikvm( 2182): GC_CONCURRENT freed 93K, 15% free 556K/652K, paused 1ms+0ms, total 1ms D/AndroidRuntime( 2194):


配置详情

这里是安卓英特尔模拟器的配置

以下是 VS2013 中 Xamarin/MvvmCross Android 项目的属性:

【问题讨论】:

    标签: android android-emulator xamarin.android intel


    【解决方案1】:

    您还应该尝试使用 AVD 管理器关闭该特定 AVD 的快照。这解决了我使用 Intel Atom (x86) 映像运行的问题。

    【讨论】:

      【解决方案2】:

      我确认问题;我删除了旧模拟器并创建了一个新模拟器,但结果相同。但是,它确实从 Xamarin Studio 安装。

      感谢 Steve 提到它适用于 API18;刚刚下载了它以确认 - 它工作正常。

      所以问题出在 API19 或模拟器中的其他一些设置上。

      【讨论】:

        【解决方案3】:

        尝试在 AVD 管理器中简单地创建一个新的模拟器。

        我发现它们会在一段时间后损坏并停止工作。

        你能否成功获得一个全新的 Lvl 19 vanilla Android 项目在模拟器中运行?

        【讨论】:

          猜你喜欢
          • 2016-03-31
          • 1970-01-01
          • 2015-10-27
          • 1970-01-01
          • 1970-01-01
          • 2018-02-20
          • 2022-01-14
          • 2014-09-30
          • 1970-01-01
          相关资源
          最近更新 更多