Ошибка в конфигурации XMPPRosterCoreDataStorage - PullRequest
0 голосов
/ 07 ноября 2018

В настоящее время я использую 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.

...