Ich versuche, Core-Datenattribute in der heutigen Widget-Erweiterung zu lesen. Ich habe viele Websites und Fragen hier gesucht, aber ich konnte keine Lösung finden! Bisher habe ich App-Gruppe zu meiner app und dann diese Zeile ändern in App Delegate
:Zugriff auf Core-Daten von Widget-Erweiterung
lazy var applicationDocumentsDirectory: NSURL = {
// file. This code uses a directory named "compony.AppName" in the application's documents Application Support directory.
let urls = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
return urls[urls.count-1]
}()
zu:
lazy var applicationDocumentsDirectory: NSURL? = {
return NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.com.myDomain.appgroupID") ?? nil
}()
so was ist der nächste Schritt? Wie kann ich vom Widget-Center aus auf Context-Entity und etc ... zugreifen? Ich wäre dankbar, wenn ein Körper mir helfen würde.
Ich habe nur eine entity
mit mehreren attributes
.
EDIT
erstelle ich eine
CoreDataStack.swift
und kopiert alle Daten Core-Dateien vonAppDelegate
auf neue Datei.hinzugefügt meine Datenmodell Erweiterung widget:
In Erweiterung
viewDidLoad
ich müde Daten vom Modell abzurufen aber passiert nichts, wenn ich das Widget laufen:context = CoreDataStack.defaultStack.managedObjectContext do { request = NSFetchRequest(entityName: "Event") results = try context.executeFetchRequest(request) print(results.count) if results.count > 0 { for item in results as! [NSManagedObject] { let name = item.valueForKey("title") print(name!) } }//end if } catch { print("there is an error for saving") }
Haben Sie alle erforderlichen Schritte befolgt? zB https://www.invasivecode.com/weblog/sharing-data-between-apps- und-ihr-extenstions/ –
@LorenzoBoaro das sit das albernste tutorial, das ich je gesehen habe! der titel ist über core daten und heute extension aber wenn du dem letzten schritt folgst! es hieß, Kerndaten sind nicht immer gut !!!!! !!! benutze NSUserDefualts !!!!!!!!!!!!!! –