如何使用Xcode 4和Cordova的符号链接

时间:2012-05-31 15:20:12

标签: xcode cordova

我无法让Xcode通过www资源复制到我的基于PhoneGap的iPhone应用程序。我考虑使用Git子模块,但由于应用程序必须在不同的平台(iPhone,Android等)上工作,并且必须以不同的方式标记(图像,css和对某些文件的小变化),因此它无法解决完整的问题。

我以一个解决方案结束,我创建了一个外部核心www文件夹,并为来自不同项目的每个文件创建了符号链接。如果文件需要特别关注平台或品牌要求,那么我可以简单地用实际文件替换符号链接的实例。

这一切都像魅力一样,但由于某种原因,Xcode for不会将符号链接的资源复制到手机上。有谁知道如何使这项工作?或者是一个可靠的选择即使这需要我一天的时间来修复。

感谢。

2 个答案:

答案 0 :(得分:8)

This solution完美地在构建中引入符号链接。使用这种方法,您可以为所有平台构建Phonegap解决方案,并使用绝对最小代码重复的方式对它们进行不同的标记。

简而言之,创建一个包含所有phonegap www内容的公共目录,然后根据不同的项目(平台差异或品牌差异)对其进行符号链接。要在Xcode上构建,请将以下内容添加到项目的运行脚本中:

rsync -pvtrlL --cvs-exclude \
    $PROJECT_DIR/../Resources* \
    $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH

注意:如果您为BlackBerry构建,则还需要取消引用符号链接。

答案 1 :(得分:2)

我只想说使用符号链接不是必需的。您只需将文件夹放入xcode即可,不要复制文件。

就我而言,我的共享文件夹名为“mobile”,因此我必须创建此运行脚本:

mv $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/mobile $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/www

这只是重命名目录,因此Cordova可以找到它正在寻找的内容。