新的在phonegap / cordova(很多疑惑)

时间:2015-12-09 17:45:06

标签: android apache cordova

我最近在安装Phonegap后开始研究使用Apache Cordoba开发应用程序。我有一些疑问,花了几个小时浏览apache和phonegap的官方页面并查看多个教程仍未解决,并想知道是否有人可以澄清。

我已经了解Apache Cordova允许您从Web应用程序开发混合应用程序。 我的问题是,正如我在官方文档中找到的,使用Apache控制台一旦添加了您想要开发的不同平台以使用命令

platform Cordova add <platform name>

然后您可以使用命令Cordova run <platform name>

为您的平台运行应用程序

我不太清楚的是文件结构。例如,假设您已经在项目文件夹中创建了一个名为HelloWorld的项目,您将找到一个名为www的文件夹,其中包含以下文件

www/
├── css
│   └── index.css
├── img
│   └── logo.png
├── index.html
└── js
└── index.js

如果你已经添加了Android平台,在目录HelloWorld / platforms / android / assets中有一个名为www的文件夹,它具有以下结构:

www/
├── cordova.js
├── cordova-js-src
│   ├── android
│   │   ├── nativeapiprovider.js
│   │   └── promptbasednativeapi.js
│   ├── exec.js
│   ├── platform.js
│   └── plugin
│   └── android
│   └── app.js
├── cordova_plugins.js
├── css
│   └── index.css
├── img
│   └── logo.png
├── index.html
├── js
│   └── index.js
└── plugins
├── cordova-plugin-vibration
│   └── www
│   └── vibration.js
└── cordova-plugin-whitelist
└── whitelist.js

直到我在Android Studio中导入项目并且我已经编译它以生成apk,修改位于文件夹HelloWorld / platforms / android / assets / www中的文件。

但我的疑问是,如果你想将应用程序导出到多个平台,我是否应该编辑文件夹HelloWorld / www的文件? 如果不是这样,我理解我们并不是为所有平台制作唯一的项目。

我不知道是否有一个解释这些差异的教程,甚至导致我搜索了许多我无法理解的页面。我现在的目标是测试一些提供apache访问设备硬件的插件,如振动或带有简单应用程序的摄像头。

如果有人能澄清这些疑惑,我将不胜感激。

由于

2 个答案:

答案 0 :(得分:0)

您应该首先修改HelloWorld / www目录中的文件。当您构建平台时(当您使用&#34; cordova run&#34;命令时会发生这种情况,它会将您的文件复制到正确的平台资源目录并构建APK或其他包从那里输入。我很惊讶它并没有用HelloWorld / www中的内容消除你的变化。

答案 1 :(得分:0)

正如MHardwick所写,cordova方式是,您在根www-folder中开发,然后启动cordova运行,将所有文件复制到平台www文件夹。

我不喜欢这样。在我的根www文件夹中,我有index.html文件和资产文件夹。在这个文件夹中,我有所有的js / css / images / ...文件。

在Android中,我使用index.html文件和root资源文件夹中的符号链接到android www文件夹。在iOS中,我在Xcode中使用预编译脚本,它执行一些链接。

注意:如果您这样做,请不要将root中的整个www文件夹复制到平台。在平台www文件夹中,平台依赖文件。