【问题标题】:Cordova loading app into android emulatorCordova 将应用程序加载到 android 模拟器中
【发布时间】:2013-07-26 16:21:28
【问题描述】:

我对 Cordova 完全陌生,但现在我已经使用 NPM 安装了 Cordova,并安装了 Android SDK 并设置了一个似乎可以完美运行的 AVD,直到我想模拟我的项目。实际应用由于某种原因没有加载到模拟器中。

以下动作完成:

marvin:HelloWorld$ cordova -d emulate android
cordova library for "android" already exists. No need to download. Continuing.
Wrote out Android application name to "HelloWorld"
Wrote out Android package name to "com.example.hello"
Calling plugman.prepare for platform "android"
Preparing android project...
Processing configuration changes for plugins.
Iterating over installed plugins: []
Writing out cordova_plugins.js...
Running on emulator for platform "android" via command ""/home/marvin/Development/projects/HelloWorld/platforms/android/cordova/run" --emulator" (output to follow)...

然后它启动 Android 模拟器,但应用程序不存在。有没有人有解决这个问题的建议,所以我能够在我的模拟器中进行实际测试?

提前谢谢你。

【问题讨论】:

    标签: android-emulator cordova


    【解决方案1】:

    有时它可以删除模拟器中以前安装的应用程序版本。为此,您还可以选中“擦除用户数据”选项来启动它。

    仅作记录,其他解决方案都不适合我。

    【讨论】:

    • 使用模拟器选项 Snapshot off/unchecked 运行 avd 或使用 Wipe user data checked/on 手动启动目标对我有用.我还没有找到通过cordova emulate 命令执行后一个擦除选项的方法。
    【解决方案2】:

    我刚刚遇到了同样的问题,我在 android sdk 文件夹中缺少 PATH 到平台工具,在我添加它之后一切就位。

    【讨论】:

    • 你把这个添加到哪里了?
    • 如果您使用的是 mac,您可以编辑 .bash_profile 并在那里设置路径。在 Windows 上,编辑环境变量并添加附加到 PATH 那里。
    • 我已经这样做了,...我在系统变量(Windows)中有一个名为 PATH 的变量。位置是“D:\apps\installed\adt-x86x64\sdk\platform-tools”,但是一旦模拟器运行......没有应用程序启动。还有什么线索吗? @mirazasx
    • 我在使用 IOS 模拟器时遇到了这个问题。没有应用程序出现,即使它只是一个空白的新 Cordova 项目。关于如何解决这个问题的任何想法?在 Mac 上。
    【解决方案3】:

    我也有同样的问题;我可以很好地运行cordova emulate android 命令,并且模拟器最终会启动并运行,但是,测试应用程序从未安装在设备上。我没有从 Cordova CLI 或控制台或任何其他地方收到任何错误。

    我发现这里有一个关于这个问题的错误报告:https://issues.apache.org/jira/browse/CB-4285

    已针对此问题找到了两种解决方案: 1. 确保您使用的是 Oracle JDK 而不是 IBM JDK,并且 2. 确保启动模拟的 AVD 将 min-target-sdk 设置为 API 10 (Android 2.3.3) 或更高版本。 (这是我的问题。)

    【讨论】:

    • 这对我有用,将 AVD 提升到 4.2.2:“确保启动模拟的 AVD 的 min-target-sdk 设置为 API 10 (Android 2.3.3) 或更高版本。 "
    • 我使用的 API 级别为 16。但同样的问题。没有启动应用程序,有任何线索@Ricky 吗?
    【解决方案4】:

    我有同样的问题。以下为我解决了。

    确保您的 AVD 的 API 级别大于在您的 cordova 应用程序中指定的 config.xml 中指定的 minSdkVersion。

    【讨论】:

      【解决方案5】:

      如果还有人遇到这个问题:

      我在设备离线时遇到了同样的问题。

      如果 ddms 正在运行,它会查看连接的设备。

      adb kill server
      

      然后运行ddms

      【讨论】:

      • 独立版本的 DDMS 已弃用
      【解决方案6】:

      还要确保您的应用 ID 不以数字或任何其他字符(如“_”)开头。例如,如果您的应用程序 ID 是 com.4company.MyAppcom._company.MyApp,它就不会加载到模拟器上。第一个是因为Java doesn't allow 名称以数字开头,第二个我猜是 Cordova 的东西。

      您还应该使用adb logcat 在命令行上显示模拟器错误。

      【讨论】:

        【解决方案7】:

        对我来说,应用程序没有启动,因为我在后台运行了第二个模拟器。卸载 bluestacks(Windows 的 android 模拟器)解决了我的问题。运行“adb logcat”应该会告诉您是否有多个模拟器正在运行。

        【讨论】:

          【解决方案8】:

          我也遇到了同样的问题,我的模拟器设备使用的是 API 15。刚刚更新到 API 17,问题就解决了。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-11-21
            • 2020-11-15
            • 2018-02-19
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多