2016-10-26 46 views
0

我開始一個項目,我將有幾個目標。 我的問題是我如何從正確的info.plist獲得一個值?Xcode中的幾個目標

說我有三個的Plist ...

目標1-的info.plist /目標2-的info.plist/Target3-Info.plist中

是否有任何 '通配符',可以是使用時用...

if let path = NSBundle.mainBundle().pathForResource("*-info", ofType: "plist") 
+0

,下_Bundle Settings_/_Packaging_,你可以找到相關的信息'.plist'文件的名稱;您需要在其中設置所需的文件名,並且在代碼中您不必擔心所處的目標,編譯器會爲當前目標嵌入正確的/正確的文件。 – holex

回答

1

您可以直接使用NSBundle.mainBundle().objectForInfoDictionaryKey("SOME_KEY")
直接訪問plist的值只需將"SOME_KEY"替換爲所需的密鑰即可。

e.g: NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleDevelopmentRegion")

在一定_target_
0
if let path = NSBundle.mainBundle().pathForResource("*-info"", ofType: "plist") { 
      myDict = NSDictionary(contentsOfFile: path) 
} 
2

的Info.plist文件是某種在Xcode特殊資源。在構建階段,它們不像其他資源那樣被複制,並且它們沒有可覆寫的構建規則。 Xcode將TargetX-Info.plist作爲Info.plist複製到相應目標的結果包中。

因此,您只能在應用運行期間訪問Info.plist而不是TargetX-Info.plist