2010-04-14 10 views
1

J'ai défini ma propre variable d'environnement (VERSION) dans un fichier .xcconfig et basé sur mes configurations que décrit à http://www.silverchairsolutions.com/blog/2008/03/automating-cocoa-deployments-with-sparkle-and-xcode. Ma variable d'environnement est en effet développée dans Info.plist mais pas dans mes Settings.bundle/Root.plist. PRODUCT_NAME est développé comme il se doit. Si je remplace VERSION par PRODUCT_NAME, il n'est pas développé. Pourquoi ne va-t-il pas s'étendre là?variable d'environnement dans xcconfig ne se développe pas dans Settings.bundle/Root.plist

Root.plist ressemble à ceci:

<?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> 

Répondre

1

Nous avons résolu ce problème en utilisant notre propre cadre, APP_PRODUCT_NAME, dans notre .xcconfig puis référencement que dans la configuration de construction en tant que PRODUCT_NAME = $ APP_PRODUCT_NAME. Cela semble se développer correctement dans le bundle en utilisant Bundle Name = $ {APP_PRODUCT_NAME} dans le plist.