PhoneGap 3.3项目结构和编辑代码



我将放弃尝试使用Visual Studio构建支持PhoneGap的应用程序,转而使用Mac。我唯一犹豫的是,我所有用于访问服务器数据的WebApi都是使用ASP开发的。Net MVC WebApi(C#)。我真的不想从开发UI的Mac跳到开发WebApi的Windows。

无论如何,在研究PhoneGap 3.3并使用CLI建立项目结构时,我发现创建了一个共享的www文件夹,所有的Html、JS和CSS代码都应该位于该文件夹中。您添加到项目中的每个平台(iOS、Android等)都位于一个单独的平台文件夹中:

Project Root Folder
|- platforms
|- iOS
| - www
|- android
| - www
|- www
|- css
|- js
|- index.html 

文档中说,你不应该对任何平台www文件夹中的文件进行任何编辑,因为构建过程会将文件从根www文件夹复制到平台中的每个www文件夹。

iOS文件夹包含xcodeProject文件,该文件打开iOS平台的特定www文件夹(而不是根文件夹)。我知道iOS下的www文件夹是专门针对iOS平台的。但这意味着您不能使用XCode来编辑您看到的任何文件。现在XCode作为编辑器是无用的,因为它编辑了错误的文件。

我们应该如何利用Xcode来对付根www文件夹?谢谢你的帮助。

我将向您展示我的团队如何在iOS上使用Cordova。这可能不是文档中推荐的方式,但它是有效的(此外,文档从来都不可靠)。

我们为Android并排开发了一个Android版本,下面的文档工作得很好:

  • 将文件复制到www文件夹
  • 执行cordova build android
  • platforms/android/bin文件夹复制已编译的应用程序

然而,对于iOS来说,它变得很棘手。如上所述,有一个xcodeProject文件。如果您对xcode进行了任何更改,执行cordova build ios肯定会覆盖这些更改。我们还发现,第二次运行cordva build ios会损坏config.xml文件,从而使我们正确运行应用程序所需的所有插件失效(从3.3.0开始,这是真的)

因此,我们的iOS团队推荐的方法是:

  • 使用cordova build ios创建iOS项目文件(xcodeProject)后
  • 对HTML文件的所有更改都应在文件夹platforms/ios/www/中进行
  • 根文件夹www将不会被触摸
  • 编译iOS IPA完全在Xcode中完成

这种方法适用于我们,因为我们在Windows PC上单独编译Android构建文件。如果您在多个平台上使用一个系统,那么明智的做法是对根www进行所有更改,然后在platforms/ios/www/创建一个符号链接-仍然保留用于编译iOS的Xcode和用于其他平台的cordova build **命令行。

希望这能有所帮助!

相关内容

最新更新