В настоящее время я использую XMPPFramework. Когда я пытаюсь добавить пользователя в свой список. Я получаю следующее предупреждение XMPPRoster: initWithRosterStorage:dispatchQueue: - Unable to configure storage!
.
Все работает нормально, но мой список не сохраняется в coreData.
Я проверил, используя следующий код, и я получил ноль предметов, хотя в моем списке 10 предметов.
let coreDate = XMPPRosterCoreDataStorage.sharedInstance()?.mainThreadManagedObjectContext
let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "XMPPUserCoreDataStorageObject")
fetchRequest.sortDescriptors = [NSSortDescriptor(key: "jidStr", ascending: true)]
do {
let array = try coreDate?.fetch(fetchRequest)
print(array?.count)
if (array!.count>0)
{
print(array![0])
}
}
catch {
print("couldnot fetch")
}
Я использую следующий код для добавления пользователей в мой список
func addUserToRoster(username:XMPPJID, nick:String)
{
let storage = XMPPRosterCoreDataStorage.sharedInstance()
let roster = XMPPRoster(rosterStorage: storage!)
roster.activate(XMPPTest.shared.stream)
roster.addDelegate(self, delegateQueue: .main)
roster.acceptPresenceSubscriptionRequest(from: username, andAddToRoster: true)
roster.addUser(username, withNickname: nick)
}
Может кто-нибудь уточнить, почему я не могу сохранить свой список в CoreDate.