与今天的小部件共享 plist 文件

share plist file with today widget

我有一个正在运行的应用程序,我想在其中添加今日小部件。今天小部件必须使用存储在 plist 中的应用数据。

我使用以下代码访问 plist:

let rootPath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, .UserDomainMask, true)[0]
path = rootPath.stringByAppendingString("/Scales.plist")

我创建了一个名为 "group.com.PaulDobbs.PrescriptionTracker" 的应用组。如何更改上面的代码以将 plist 文件放在那里?

如果您想在多个应用程序之间共享文件,您需要设置一个群组。你说你已经这样做了。然后你应该能够使用以下方法获取共享目录的URL:

let url = NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.com.PaulDobbs.PrescriptionTracker")

您必须在此 URL 放置您需要共享访问权限的所有文件,并且它们应该在组中的所有应用程序中可用。