جيت شات
تقليد بسيط لتطبيق الدردشة WeChat المكتوب بلغة Swift5.0، والذي يدعم بشكل مثالي لوحة المفاتيح التعبيرية، والدردشة الفردية، والدردشة الجماعية، وذاكرة التخزين المؤقت لجلسة الرسائل المحلية، ودائرة الأصدقاء، وأوضاع السمات النهارية والليلية
أمثلة
محادثة | لحظات |
---|
| |
الوضع الليلي | وضع اليوم |
---|
| |
التطبيقات التقنية الرئيسية
- تعتمد وظيفة الدردشة تصميم بنية الاستجابة RxSwift+MVVM، وتنقل بيانات الرسالة بشكل معقول من خلال ViewModel لتقليل حساب الأعمال لطبقة وحدة التحكم.
- ينفذ UITableView+FDTemplateLayoutCell الحساب التكيفي لارتفاع الخلية والتخزين المؤقت، مما يؤدي إلى تحسين سلاسة انزلاق القائمة
- يقوم WCDBSwift بتنفيذ التخزين المؤقت السريع لجميع رسائل الجلسة
- استنادًا إلى برنامج تشغيل بيانات IGList، يمكنك تحقيق انزلاق قائمة دوائر الأصدقاء بمعدل إطارات مرتفع
- يتكيف RxTheme مع الوضع الليلي وهو متوافق مع إعدادات وضع النظام التالية لنظام التشغيل iOS13
- SnapKit التخطيط التلقائي للكود النقي
الوظائف الرئيسية
- معالجة تغليف التحكم بلوحة المفاتيح في غرفة الدردشة، وتدعم إدخال الرموز التعبيرية متعدد الأسطر، وتدعم iOS13
- المستخدم: إضافة أصدقاء، وإضافة مجموعات، وتعديل ملاحظات المستخدم وأسماءه، والمزامنة المحلية في الوقت الحقيقي
- الدردشة: دردشة فردية، دردشة جماعية بين شخصين، تدعم إرسال النصوص والفيديو وإرسال الصور وإعادة توجيهها وتصفح الصور والفيديو
- المحادثة: سجلات محادثة الدردشة الأخيرة، يتم عرضها في قائمة مرتبة حسب آخر مرة
- الزاوية: عرض عدد الرسائل غير المقروءة في الجلسة الواحدة، عرض عدد جميع الرسائل غير المقروءة
- مسح: حذف رسالة واحدة، الخروج من المجموعة، حذف الأصدقاء، مسح أيقونات جلسة الرسائل، حذف السجلات
في الوقت الحالي، تم إكمال الوظائف الأساسية للتعرف على الوظائف المحددة، يمكنك تنزيل الكود المصدري وتشغيله على https://github.com/developerjet/JetChat.
ميزات جديدة
- اللحظات: تطبق IGList انزلاقًا بمعدل إطارات مرتفع لقائمة اللحظات
- الوضع المظلم: يقوم RxTheme بتنفيذ تبديل وضع السمة ليلا ونهارا وهو متوافق مع إعدادات وضع النظام التالية لنظام التشغيل iOS13
- عنصر واجهة المستخدم: قم بإضافة عنصر واجهة مستخدم للدردشة الحديثة، انقر فوق عنصر واجهة المستخدم للانتقال إلى غرفة الدردشة [لاحظ تكوين AppGroupsID]
- التبديل متعدد اللغات: تمت إضافة الترجمة الإنجليزية
نصائح
- إذا كانت لديك اقتراحات وحلول تحسين أفضل لهذا المشروع أو كنت بحاجة إلى إضافة أي ميزات مثيرة للاهتمام، فيرجى إرسالها إلى lssues.
- خطأ في تشغيل Xcode15: لا يحتوي SDK على "libarclite"، الحل https://www.jianshu.com/p/6f3798d1de0e
مرخصة بموجب تراخيص معهد ماساتشوستس للتكنولوجيا
- إذا كنت مهتمًا بهذا المشروع أو كان يساعدك، أتمنى أن تمنحني "نجمة"، شكرًا جزيلاً لك❤️