2012-03-27 38 views

回答

0

PhoneGap's template通过在Definitions部分简单引用其框架的绝对路径来实现。

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 

    [...] 

    <key>Definitions</key> 
    <dict> 
     <key>PhoneGap</key> 
     <dict> 
      <key>Path</key> 
      <string>/Users/Shared/PhoneGap/Frameworks/PhoneGap.framework</string> 
      <key>PathType</key> 
      <string>Absolute</string> 
     </dict> 

此外,它们引用下SharedSettings部分Targets内的框架的路径;

[...] 

    <key>Targets</key> 
    <array> 
     <dict> 
      <key>SharedSettings</key> 
      <dict> 
       <key>ALWAYS_SEARCH_USER_PATHS</key> 
       <string>YES</string> 
       <key>FRAMEWORK_SEARCH_PATHS</key> 
       <string>/Users/Shared/PhoneGap/Frameworks</string> 
      </dict> 
     </dict> 
    </array> 

这样做的工作,但丑陋的地狱。我宁愿不使用绝对路径,但这意味着要完成其他任务 - 比如使用模板后运行脚本 - 对于那部分,我没有答案。

0

这个问题可能已经解决了,但是从来没有在SO上得到答案。但我现在的建议是在您的项目模板中包含一个CocoaPodsPodfile,如Xcode Project Templates of AFNetworking,它指的是QuincyKit。

创建模板后,您需要在终端上执行的所有操作都是pod install。不完全自动化,但它完成了工作。