我有一项任务可以在同一台设备上的应用之间共享数据.可能两个应用程序都可以在同一设备上使用共享数据库.如何在
IOS中的两个应用程序之间共享数据.任何人都以这样做.
请告诉我.谢谢
请告诉我.谢谢
解决方法
您可以在具有相同组容器ID的两个应用上的“应用程序项目功能”选项卡上打开“应用程序”组. “group.com.yourCompanyID.sharedDefaults”
然后,您可以使用以下网址从应用程序访问同一个文件夹:
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) } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。