JetChat
Una simple imitación de la aplicación de chat WeChat escrita en Swift5.0, que admite perfectamente el teclado de emoticonos, chat individual, chat grupal, caché de sesión de mensajes local, círculo de amigos, modos temáticos de día y de noche.
Ejemplos
charlar | Momentos |
---|
| |
Modo nocturno | modo diurno |
---|
| |
Principales aplicaciones técnicas
- La función de chat adopta el diseño de arquitectura receptiva RxSwift + MVVM y realiza una transición razonable de los datos del mensaje a través de ViewModel para reducir el cálculo comercial de la capa del Controlador.
- UITableView+FDTemplateLayoutCell implementa cálculo adaptativo de altura de celda y almacenamiento en caché, mejorando la suavidad del deslizamiento de la lista
- WCDBSwift implementa un almacenamiento en caché rápido de todos los mensajes de la sesión
- Basado en el controlador de datos IGList, realice una lista deslizante de círculos de amigos con una alta velocidad de fotogramas
- RxTheme se adapta al modo nocturno y es compatible con iOS13 siguiendo la configuración del modo del sistema
- Diseño automático de código puro de SnapKit
Funciones principales
- Procesamiento de encapsulación de control de teclado de sala de chat, admite entrada de emoticonos de varias líneas y admite iOS13
- Usuario: agregue amigos, agregue grupos, modifique notas y nombres de usuarios, sincronización local en tiempo real
- Chat: chat uno a uno, chat grupal uno a muchos, admite texto, video, envío y reenvío de imágenes, navegación de imágenes y videos
- Conversación: registros de conversaciones de chat recientes, que se muestran en una lista ordenada por la hora más reciente
- Esquina: muestra el número de mensajes no leídos en una sola sesión, muestra el número de todos los mensajes no leídos
- Borrar: eliminar un solo mensaje, salir del grupo, eliminar amigos, borrar iconos de sesión de mensajes, eliminar registros
Actualmente, las funciones básicas se han completado. Para conocer las funciones específicas, puede descargar el código fuente y ejecutarlo en https://github.com/developerjet/JetChat.
Nuevas características
- Momentos: IGList implementa el deslizamiento de alta velocidad de fotogramas de la lista de Momentos
- Modo oscuro: RxTheme implementa el cambio de modo de tema día y noche y es compatible con iOS13 siguiendo la configuración del modo del sistema
- Widget: agregue un widget de chat reciente. Haga clic en el widget para ir a la sala de chat [tenga en cuenta la configuración de AppGroupsID].
- Cambio de varios idiomas: se ha agregado traducción al inglés
Consejos
- Si tiene mejores sugerencias y soluciones de optimización para este proyecto o necesita agregar alguna característica interesante, envíelas en lssues.
- Error de ejecución de Xcode15: el SDK no contiene 'libarclite', solución https://www.jianshu.com/p/6f3798d1de0e
Licenciado bajo las licencias del MIT.
- Si te interesa este proyecto o te ayuda espero que puedas darme una ?Estrella?, muchas gracias❤️