2010-04-14 55 views
1

我已經在.xcconfig文件中定義了我自己的環境變量(VERSION),並基於我的配置,如http://www.silverchairsolutions.com/blog/2008/03/automating-cocoa-deployments-with-sparkle-and-xcode中所述。我的環境變量確實在Info.plist中擴展,但不在我的Settings.bundle/Root.plist中。 PRODUCT_NAME已進行了擴展。如果我將PRODUCT_NAME替換爲VERSION,則不會展開。爲什麼它不會在那裏擴展?xcconfig中的環境變量不會在Settings.bundle/Root.plist中展開

Root.plist看起來是這樣的:

<?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>Title</key> 
<string>${PRODUCT_NAME}</string> 
<key>PreferenceSpecifiers</key> 
<array> 
    <dict> 
     <key>DefaultValue</key> 
     <string>${VERSION}</string> 
     <key>Key</key> 
     <string>version</string> 
     <key>Title</key> 
     <string>Version</string> 
     <key>Type</key> 
     <string>PSTitleValueSpecifier</string> 
    </dict> 
</array> 

回答

1

我們已經用我們自己的設置,APP_PRODUCT_NAME,我們.xcconfig然後引用解決了這個,在構建配置爲PRODUCT_NAME = $ APP_PRODUCT_NAME。通過在plist中使用Bundle Name = $ {APP_PRODUCT_NAME},這似乎可以在捆綁包中正常展開。