0

因为我正在尝试通过 phonegap 制作应用程序,应该在 iOS 和 Android 以及其他设备(如 Windows)上运行什么我对资产文件夹的敲击有一个小的理解问题。

在文档中,资产/www forlder 中的所有内容都来自我。HTML/JS/CSS 图像等。

但是,当我在 iOS 应用程序和 Android 应用程序之间特别是在设计上有小的差异时,会发生什么。我应该在 www 文件夹中打包所有内容并进行每次检查,如果是 iOS,那么这个,如果是 Android,那么这个,或者我应该制作单独的文件夹,例如 assets/www/android 和 assets/www/iOS 并在那里有不同的代码和图像对于每个平台或使其像维基百科:https ://github.com/wikimedia/WikipediaMobile

在 Wikipedia 的应用程序中的 www 文件夹中,每个平台都有子文件夹,其中有该平台的属性。这个,我不明白的是他们如何选择使用哪个平台,以及如何知道 iOS 上的应用程序从 iOS forlder 中选择属性?

有没有人有这方面的经验?

4

2 回答 2

1

我主要使用平台之间存在真正差异的预构建脚本 - 大多数东西是不变的,但是当从开发 www 文件夹(它本身是由 jekyll 生成)复制到应用程序 www 文件夹时,一些文件会被换出 - 例如 cordova .android.js 被复制为 cordova.js。

这种方法还允许处理平台之间的一些较大的不一致性,例如视频需要在 res 中,而不是在 android 上。

大多数设计差异都可以通过 CSS 媒体查询来处理。

自定义插件也很有用——它们可以在所有平台上具有相同的接口,但实现完全不同。

如果您最终不得不在运行时切换 javascript 中的某些内容,只需检查 device.platform。

于 2012-12-01T13:41:41.973 回答
0

To work with PhoneGap and on different platform, I create different folder : page, plugin, function... All this folder are similar on all platform. This allow you to copy them in a different platform and to see your application running. Just don't copy the cordova.js file.

In each specific function, like Tom, I check the device.platform to adjust the code. But I try to get the most generic code. Be carefull, sometimes the platform don't interpret basic code (like in windows Phone the balise bottom...)

If you use plugins, just don't put it in the same folder as your project one.

When I developed with phonegap, this was my strategy:

-Develop on Android my application, test it

-Copy with a software like diffmerge, the www folder of android in iosproject

-Build ios project, test it

于 2013-10-22T15:49:04.847 回答