阅读Swift中另一个应用的用户默认值

时间:2017-10-26 12:41:36

标签: swift

在macOS上的Swift 3+中 我在捆绑包标识符com.bla.bla下运行了一个应用:

我可以用

读取一个键
UserDefaults.standard.string(forKey: "mykey")

我也可以用以下方法从其他包中删除密钥:

UserDefaults.standard.removePersistentDomain(forName: "com.foo.bar")
UserDefaults.standard.synchronize()

但是如何从包标识com.foo.bar下的其他应用中读取密钥?

在命令行中:

defaults read com.foo.bar anotherkey

我如何在Swift中做同样的事情?

1 个答案:

答案 0 :(得分:0)

您可以使用其捆绑包标识符为macOS中的任何应用创建用户默认值:

if let theDefaults = UserDefaults(suiteName: "com.foo.bar") {
    let theValue = theDefaults.string(forKey: "mykey")

    ...
}

使用iOS时,这仅适用于共享组容器。