在IOS中的应用程序之间共享数据

我有一个任务在同一设备上的应用程序之间共享数据。 可能两个应用程序都可以在同一台设备上使用共享数据库。 如何在IOS中的两个应用程序之间共享数据。 任何人都以任何方式做了。 请告诉我。 谢谢

您可以在具有相同组容器标识的两个应用程序上的“应用程序项目function”选项卡上打开“应用程序组”。 “group.com.yourCompanyID.sharedDefaults”

在这里输入图像描述

然后,您可以使用以下url从您的应用程序访问相同的文件夹:

let sharedContainerURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.yourCompanyID.sharedDefaults")! 

所以,如果你想从两个不同的应用程序共享一个开关状态,你应该这样做:

 import UIKit class ViewController: UIViewController { @IBOutlet weak var sharedSwitch: UISwitch! let switchURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.yourCompanyID.sharedDefaults")! .appendingPathComponent("switchState.plist") override func viewDidLoad() { super.viewDidLoad() print(switchURL.path) NotificationCenter.default.addObserver(self, selector: #selector(updateSwitch), name: .UIApplicationDidBecomeActive, object: nil) } func updateSwitch(_ notofication: Notification) { sharedSwitch.isOn = NSKeyedUnarchiver.unarchiveObject(withFile: switchURL.path) as? Bool ?? false } @IBAction func switched(_ switch: UISwitch) { let success = NSKeyedArchiver.archiveRootObject(switch.isOn, toFile: switchURL.path) print(success) } }