Sobes.tech
Junior — Middle

Kuidas kuvada kasutajale eelnevaid sõnumeid, kui võrk pole saadaval?

sobes.tech AI

Vastus AI-lt

Et näidata kasutajale varasemaid sõnumeid iOS-is, kui võrk puudub, tuleb rakendada kohaliku sõnumite vahemälu. Selleks saate:

  • Salvestada saadud sõnumid kohalikku andmebaasi, näiteks Core Data või Realm.
  • Laadimisel chat, laadige esmalt sõnumid kohalikust salvestusest.
  • Kui võrk puudub, näidake just neid kohalikke andmeid.

Näide Core Data kasutamisest sõnumite laadimiseks:

func fetchCachedMessages() -> [Message] {
    let fetchRequest: NSFetchRequest<Message> = Message.fetchRequest()
    fetchRequest.sortDescriptors = [NSSortDescriptor(key: "date", ascending: true)]
    do {
        let messages = try context.fetch(fetchRequest)
        return messages
    } catch {
        print("Viga sõnumite laadimisel: \(error)")
        return []
    }
}

Sel viisil näeb kasutaja alati sõnumite ajalugu, isegi kui võrk pole saadaval.