我正在编写一个简短的Mac应用程序(我们称之为“myApp”),我需要在〜/ Library / Preferences /中读取和写入.GlobalPreferences plist。
对于阅读部分,我使用以下内容并且工作正常:
let boolValue = NSUserDefaults.standardUserDefaults().boolForKey("aKeyInGlobalPreferences")
但是,我在更改同一个键的值时遇到了一些麻烦。我尝试了以下方法:
NSUserDefaults.standardUserDefaults().setBool(true, forKey: "aKeyInGlobalPreferences")
NSUserDefaults.standardUserDefaults().synchronize()
可悲的是,它没有改变.GlobalPreferences中的键值。相反,它创建了一个新的plist com.myName.myApp,其中包含键值对。
如何让我的应用程序写入.GlobalPreferences而不是创建新的plist?
答案 0 :(得分:1)
您需要使用setPersistentDomain()
专门写入全局域。
NSUserDefaults.standardUserDefaults().setPersistentDomain(["aKeyInGlobalPreferences":true],
forName: NSGlobalDomain)