[英]Phonegap - assets and universal iOS apps
我目前正在为iPhone,iPad,Android手机和Android平板电脑构建一个应用程序。
我正在使用一个与本示例类似的代码库。
但是由于支持平板电脑,我的项目也有些复杂,因此,我希望排除安装该应用程序的设备上未使用的资产。
为了澄清,我的项目文件/文件夹结构如下所示:
项目根目录:
例如,我不希望iPhone应用程序包含平板电脑资产,例如:html / css / style-android-tablet.css,html / css / style-ios-tablet.css,html / images / tablet / ,html /模板/平板电脑/
目前,由于无用的资产(主要是图片),该应用在iphone上比较繁琐(例如)。
我尝试了一些想法,例如:-在xcode项目中使用2个标签。 一种用于iphone,一种用于ipad。 但是无法将xcode中www下的文件和文件夹设置为目标成员身份。 只有www可以。 -使用2个www目录和2个目标,但是iphone目标仍然包括以ipad为目标的www。
我认为该解决方案可以为我提供帮助,但我不太了解如何将其调整为适合我的文件结构。
因此,我请求您的帮助以找到最佳的,更简单的解决方案,以应对未来(下一个项目和现有项目的发布)。
预先感谢您的帮助。
干杯。
这是我过去在Android和iOS之间共享资源的方法:
您可以使用这种精确的技术来拥有共享的代码库,但也可以拥有特定于平台的文件。 只需将文件夹添加到www目录(而不是共享目录),然后将特定于平台的CSS文件放入其中。 注意:在这种方法中,www的子文件夹是符号链接的,而不是www的父文件夹。
如果要在设备尺寸之间使用单独的CSS文件,则会有些棘手...
一种选择是在使用JavaScript的应用程序初始化期间有条件地附加<style>元素。 您可以检查用户代理和窗口尺寸,并为适当的平台和形状因子手动添加<style>元素。 但是,通常不鼓励用户代理嗅探,因为它很容易被破坏,或者如果引入了新的设备类别,则失败。
另一个选择是包括所有内容并使用CSS媒体查询。
如果您使用通用二进制文件(同时针对手机和平板电脑的外形尺寸),则必须在应用程序中同时包含手机和平板电脑的CSS。 您可以使用CSS媒体查询,以便CSS样式仅应用于特定的设备尺寸。 因此,将平板电脑样式包装在媒体查询中,它们只会应用于平板电脑的外形尺寸。
您可以在此处阅读有关CSS媒体查询的更多信息:
您可以在此处访问预定义的CSS媒体查询,以了解常见的设备尺寸:
如果不使用通用二进制文件,则每个设备类别都需要单独的项目环境。 在每个单独的项目中,您都可以使用CSS文件的静态路径符号链接到共享代码库。
如果要有条件地将特定的CSS文件插入特定的项目配置,则每个项目都需要单独的项目,或者需要编写脚本来为您执行此操作。
希望有帮助...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.