Ich habe eine Aufgabe, Daten zwischen Apps auf dem gleichen Gerät zu teilen. Möglicherweise können beide Apps eine gemeinsame Datenbank auf demselben Gerät verwenden. So teilen Sie Daten zwischen zwei Apps in IOS. Jeder hat es in irgendeiner Weise getan. Bitte lassen Sie es mich wissen. DankeFreigabe von Daten zwischen Apps in IOS
11
A
Antwort
23
Sie können die App-Gruppe auf Ihrem Tab "App Project Capabilities" in Ihren Apps mit derselben Gruppencontainer-ID aktivieren. „Group.com.yourCompanyID.sharedDefaults“
Dann können Sie den gleichen Ordner aus Ihren Apps Zugriff auf die folgende URL ein:
let sharedContainerURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.yourCompanyID.sharedDefaults")!
Also, wenn Sie möchten, einen Schaltzustand teilen aus zwei verschiedenen Anwendungen sollten Sie es wie folgt tun:
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)
}
}
Check out [Link] (http://www.enharmonichq.com/sharing-data-locally-between-ios-apps/). Es basiert auf Objective-C, aber das gleiche Konzept gilt immer noch. –
@ Phoen1xUK Ich denke, dieser Artikel ist veraltet, seit iOS 8, App-Gruppen sind die offizielle Möglichkeit, es zu tun. – neuhaus
Ich spreche über App-Gruppen. hast du das umgesetzt? – Abhishek