Junior — Middle
Comment afficher les messages précédents à l'utilisateur si le réseau n'est pas disponible?
sobes.tech IA
Réponse de l'IA
Pour afficher les messages précédents à l'utilisateur en cas d'absence de réseau sur iOS, il est nécessaire de mettre en œuvre la mise en cache locale des messages. Pour cela, vous pouvez :
- Enregistrer les messages reçus dans une base de données locale, comme Core Data ou Realm.
- Lors du chargement du chat, charger d'abord les messages depuis le stockage local.
- En cas d'absence de réseau, afficher ces données locales.
Exemple d'utilisation de Core Data pour charger les messages :
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("Erreur lors du chargement des messages : \(error)")
return []
}
}
Ainsi, l'utilisateur voit toujours l'historique des messages, même si le réseau n'est pas disponible.