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

前端之家收集整理的这篇文章主要介绍了在IOS中的应用程序之间共享数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一项任务可以在同一台设备上的应用之间共享数据.可能两个应用程序都可以在同一设备上使用共享数据库.如何在 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)
    }
}

猜你在找的iOS相关文章