android - Cordova "hello world"应用程序不会显示

标签 android cordova

我是 Apache Cordova 新手,我无法在 Android 上显示 Cordova“hello world”应用程序。我说的是从 CLI 的“cordova create”命令获得的默认应用程序。

我阅读了文档并根据需要安装了所有东西(Node.js、npm、Cordova 5.0.0,我已经有一个 Android SDK,所以我只需要更新 PATH)。

Cordova 告诉我构建成功。

然后它说应用程序已启动,但设备/模拟器屏幕上唯一发生变化的是打开了一个菜单(如下图所示):http://i.stack.imgur.com/F7bI2.jpg

我在模拟器和真机上试过,结果是一样的。

我查看了API版本,好像已经够高了(4.0.3)。 我在 Windows 7 下,使用 Oracle JDK。我以为可能缺少一个插件并安装了 cordova-plugin-device,但它并没有改变任何东西。

这是一个错误还是我遗漏了什么? 是否有某种方法可以获取错误报告(“cordova run android”命令没有出现异常)?

最佳答案

我终于明白了。

问题似乎是 apk 没有正确安装。当我使用以下命令安装应用程序时,该应用程序实际上能够运行(如 cordova run android executes fine. But Android 4.1.2 doesn't start the app 中 jojo 所推荐):adb install <path_to_apk>

所以我检查了 Cordova 代码以查看安装 apk 时发生了什么,并手动启动了 Cordova 使用的命令:

adb -s ' + resolvedTarget.target + ' install -r -d "' + apk_path + '"

它返回:“错误:未知选项 -d”!

如果您简单地删除“-d”选项,应用程序将正常运行 cordova run android 在 Cordova 5.0.0 上,您会在文件 platforms\android\cordova\lib\device.js 的第 101 行(以及 platforms\android\cordova\lib\emulator.js 的第 311 行找到此命令cordova emulate android)。

我也不知道这个“-d”选项是什么意思...这是 Cordova 错误吗?

编辑

正如 joris 在评论中所说:

The -d is supposed to come directly after adb (as in --device) instead of after install. So you can just move it there instead of removing it.

加上,here is the opened issue on apache cordova issue tracker

关于android - Cordova "hello world"应用程序不会显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30149970/

相关文章:

android - 如何在特定的LinearLayout中添加Canvas?

android - Nine-Patch Drawable 与 Shape Drawable。应该首选哪个?

android - 如何使用Intent捕获视频并设置录制路径和限制录制时间

javascript - 地理定位 cordova 应用程序中的位置半径

android - 警报 - 此应用程序将受到政策更改的影响。 READ_CALL_LOG 不在 list 中

android - 约束布局 0dp 无法正确呈现

android - Linux : add android platform to cordova

javascript - ionic 推送无法读取未定义的属性 'init'

javascript - 将脚本从内部存储注入(inject)到 cordova inappbrowser

android - Cordova、q.js thorwing e、android 工具在路径中