我開始一個項目,我將有幾個目標。 我的問題是我如何從正確的info.plist獲得一個值?Xcode中的幾個目標
說我有三個的Plist ...
目標1-的info.plist /目標2-的info.plist/Target3-Info.plist中
是否有任何 '通配符',可以是使用時用...
if let path = NSBundle.mainBundle().pathForResource("*-info", ofType: "plist")
我開始一個項目,我將有幾個目標。 我的問題是我如何從正確的info.plist獲得一個值?Xcode中的幾個目標
說我有三個的Plist ...
目標1-的info.plist /目標2-的info.plist/Target3-Info.plist中
是否有任何 '通配符',可以是使用時用...
if let path = NSBundle.mainBundle().pathForResource("*-info", ofType: "plist")
您可以直接使用NSBundle.mainBundle().objectForInfoDictionaryKey("SOME_KEY")
直接訪問plist的值只需將"SOME_KEY"
替換爲所需的密鑰即可。
e.g: NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleDevelopmentRegion")
if let path = NSBundle.mainBundle().pathForResource("*-info"", ofType: "plist") {
myDict = NSDictionary(contentsOfFile: path)
}
的Info.plist文件是某種在Xcode特殊資源。在構建階段,它們不像其他資源那樣被複制,並且它們沒有可覆寫的構建規則。 Xcode將TargetX-Info.plist
作爲Info.plist
複製到相應目標的結果包中。
因此,您只能在應用運行期間訪問Info.plist
而不是TargetX-Info.plist
。
,下_Bundle Settings_/_Packaging_,你可以找到相關的信息'.plist'文件的名稱;您需要在其中設置所需的文件名,並且在代碼中您不必擔心所處的目標,編譯器會爲當前目標嵌入正確的/正確的文件。 – holex