تتيح لك Sendbird Chat SDK لنظام Android إضافة الدردشة في الوقت الفعلي إلى تطبيق العميل الخاص بك بأقل جهد. تقدم Sendbird حلول دردشة غنية بالميزات وقابلة للتطوير ومثبتة تعتمد على شركات مثل Reddit وHinge وPubG وPaytm.
توفر Chat SDK الوظائف الكاملة لتوفير تجربة دردشة غنية، ويبدأ تنفيذها بإضافة تسجيل دخول للمستخدم، وسرد القنوات المتاحة، واختيار أو إنشاء قناة مفتوحة أو قناة جماعية، وتلقي الرسائل والأحداث الأخرى من خلال مندوبي أحداث القناة و القدرة على إرسال رسالة. بمجرد تفعيل هذه الوظيفة الأساسية، تهانينا، لديك الآن تطبيق دردشة!
بمجرد تنفيذ ذلك، قم بإلقاء نظرة على جميع الميزات الأخرى التي يدعمها Sendbird وأضف ما يناسب المستخدمين بشكل أفضل.
تعرف على المزيد حول Sendbird Chat لنظام Android على الوثائق. إذا كان لديك أي تعليقات أو أسئلة أو طلبات ميزات، فأخبرنا بذلك في مجتمع Sendbird.
الحد الأدنى لمتطلبات Chat SDK لنظام Android هو:
Android 5.0 (API level 21) or higher
Java 8 or higher
Android Gradle plugin 3.4.2 or higher
Firebase Cloud Messaging 19.0.1 or higher
ملاحظة : يدعم خادم Sendbird أمان طبقة النقل (TLS) من الإصدار 1.0 إلى 1.3. على سبيل المثال، في مناطق الخادم التي لا يتوفر فيها TLS 1.3، سيتم دعم الإصدارات الأقل، بالتسلسل من 1.2 إلى 1.0، لنقل البيانات بشكل آمن.
أسرع طريقة للبدء هي استخدام أحد نماذج التطبيقات من نماذج الريبو، وإنشاء تطبيق في لوحة معلومات Sendbird ونسخ App ID
إلى نموذج التطبيق وستكون جاهزًا للبدء.
قبل تثبيت Sendbird Chat SDK، تحتاج إلى إنشاء تطبيق Sendbird على لوحة معلومات Sendbird. ستحتاج إلى App ID
الخاص بتطبيق Sendbird الخاص بك عند تهيئة Chat SDK.
ملاحظة : يمكن دمج كل تطبيق من تطبيقات Sendbird مع تطبيق عميل واحد. وضمن نفس التطبيق، يمكن للمستخدمين التواصل مع بعضهم البعض عبر جميع المنصات، سواء كانوا على الأجهزة المحمولة أو على الويب.
يعد تثبيت Chat SDK أمرًا بسيطًا إذا كنت معتادًا على استخدام المكتبات الخارجية أو مجموعات SDK. أولاً، قم بإضافة الكود التالي إلى ملف build.gradle
الجذري الخاص بك:
allprojects {
repositories {
.. .
maven { url " https://repo.sendbird.com/public/maven " }
}
}
ملاحظة: تأكد من عدم إضافة مقطع التعليمات البرمجية أعلاه إلى ملف
build.gradle
الخاص بوحدتك.
إذا كنت تستخدم Gradle 6.8 أو أعلى، أضف ما يلي إلى ملف settings.gradle
الخاص بك:
dependencyResolutionManagement {
repositories {
maven { url " https://repo.sendbird.com/public/maven " }
}
}
بعد ذلك، قم بإضافة التبعية إلى ملف build.gradle
ذي المستوى الأعلى للمشروع:
dependencies {
.. .
implementation ' com.sendbird.sdk:sendbird-chat:4.21.1 '
.. .
}
يتم تمكين TLS 1.3 افتراضيًا في Sendbird SDK لنظام Android. لتعطيله، يرجى تضمين التكوين التالي في تبعية gradle:
ملحوظة: يعتمد SendBird Android SDK على مكتبة Conscrypt لدعم TLS 1.3
dependencies {
implementation ( ' com.sendbird.sdk:sendbird-chat:4.21.1 ' ) {
exclude group : ' org.conscrypt ' , module : ' conscrypt-android '
}
}
تتطلب Chat SDK أذونات النظام، والتي تسمح بالاتصال بخادم Sendbird والقراءة والكتابة على مساحة تخزين جهاز المستخدم. لمنح أذونات النظام، أضف الأسطر التالية إلى ملف AndroidManifest.xml
الخاص بك.
< uses-permission android : name = " android.permission.INTERNET " />
< uses-permission android : name = " android.permission.READ_EXTERNAL_STORAGE " />
< uses-permission android : name = " android.permission.WRITE_EXTERNAL_STORAGE " />
عند إنشاء ملف APK الخاص بك باستخدام minifyEnabled true
، أضف السطر التالي إلى ملف قواعد ProGuard
الخاص بالوحدة.
-dontwarn com.sendbird.android.shadow. **
الآن بعد أن تم استيراد Chat SDK، أصبحنا جاهزين لبدء إرسال رسالة.
من أجل استخدام ميزات Chat SDK، يجب بدء مثيل SendbirdChat
من خلال مصادقة المستخدم مع خادم Sendbird. يتصل هذا المثيل بالخادم ويتفاعل معه بناءً على حساب مستخدم تمت مصادقته، ومن ثم يمكن لتطبيق عميل المستخدم استخدام ميزات Chat SDK.
فيما يلي خطوات إرسال رسالتك الأولى باستخدام Chat SDK:
الآن، قم بتهيئة Chat SDK في التطبيق للسماح لـ Chat SDK بالاستجابة للتغيرات في حالة الاتصال في تطبيقات عميل Android.
لتهيئة مثيل SendbirdChat
، قم بتمرير APP_ID
الخاص بتطبيق Sendbird الخاص بك في لوحة معلومات Sendbird كوسيطة لمعلمة في أسلوب SendbirdChat.init()
. نظرًا لأن SendbirdChat.init()
لا يمكن أن يكون سوى مثيل واحد، فاتصل به مرة واحدة فقط عبر تطبيق عميل Android الخاص بك. عادةً، يتم تنفيذ التهيئة في شاشة تسجيل دخول المستخدم.
ملاحظة: يوصى بتهيئة Chat SDK في طريقة
onCreate()
لمثيلApplication
.
SendbirdChat . init ( InitParams ( APP_ID , applicationContext, useCaching = true ))
بعد التهيئة باستخدام طريقة init()
، يجب أن يكون تطبيق العميل الخاص بك متصلاً دائمًا بخادم Sendbird قبل استدعاء أي طريقة. إذا حاولت استدعاء أسلوب دون الاتصال، فسيظهر الخطأ ERR_CONNECTION_REQUIRED (800101)
.
قم بتوصيل المستخدم بخادم Sendbird إما من خلال معرف مستخدم فريد أو بالاشتراك مع رمز الوصول. يفضل Sendbird الطريقة الأخيرة، لأنها تضمن الخصوصية للمستخدم. يكون الخيار الأول مفيدًا أثناء مرحلة التطوير أو إذا كانت الخدمة الخاصة بك لا تتطلب أمانًا إضافيًا.
قم بتوصيل المستخدم بخادم Sendbird باستخدام معرف المستخدم الفريد الخاص به. افتراضيًا، يمكن لخادم Sendbird مصادقة المستخدم من خلال معرف مستخدم فريد. عند طلب الاتصال، يقوم الخادم بالاستعلام عن قاعدة البيانات للتحقق من التطابق. يتم تسجيل أي معرف مستخدم غير مأخوذ تلقائيًا كمستخدم جديد في نظام Sendbird، بينما يُسمح للمعرف الحالي بتسجيل الدخول بشكل غير مباشر. يجب أن يكون المعرف فريدًا داخل تطبيق Sendbird، مثل عنوان بريد إلكتروني مجزأ أو رقم هاتف في خدمتك.
يتيح لك ذلك البدء والتشغيل دون الحاجة إلى التعمق في تفاصيل عملية تسجيل الرمز المميز، ومع ذلك تأكد من تمكين فرض الرموز المميزة قبل الإطلاق نظرًا لأن التشغيل بدونها يشكل خطرًا أمنيًا.
SendbirdChat .connect( USER_ID ) { user, e ->
if (e != null ) { // Error.
return @connect
}
}
يفضل Sendbird أن تقوم بتمرير معرف التطبيق من خلال استخدام رمز مميز، لأنه يضمن الخصوصية والأمان للمستخدمين. قم بإنشاء مستخدم مع رمز الوصول الخاص به، أو قم بإصدار رمز مميز للجلسة لتمريره أثناء الاتصال. يمكن العثور على مقارنة بين رمز الوصول ورمز الجلسة هنا. بمجرد إصدار الرمز المميز، يُطلب من المستخدم تقديم الرمز المميز الصادر في طريقة SendbirdChat.connect()
المستخدمة لتسجيل الدخول.
SendbirdChat.connect()
. SendbirdChat .connect( USER_ID , AUTH_TOKEN ) { user, e ->
if (e != null ) { // Error.
return @connect
}
}
أنشئ قناة مفتوحة باستخدام الأكواد التالية. القنوات المفتوحة هي المكان الذي يمكن لجميع المستخدمين في تطبيق Sendbird الخاص بك المشاركة فيه بسهولة دون دعوة.
OpenChannel .createChannel( OpenChannelCreateParams ()) { channel, e ->
if (e != null ) { // Error.
return @createChannel
}
}
ملاحظة : يمكنك أيضًا إنشاء قناة جماعية لإرسال رسالة. لمعرفة المزيد، راجع إنشاء قناة في صفحة قناة المجموعة.
الدخول إلى القناة المفتوحة لإرسال واستقبال الرسائل.
OpenChannel .getChannel( CHANNEL_URL ) { channel, e ->
if (e != null ) { // Error.
return @getChannel
}
channel?.enter { enterError ->
if (enterError != null ) { // Error.
return @enter
}
}
}
وأخيراً أرسل رسالة إلى القناة. هناك ثلاثة أنواع: رسالة المستخدم، وهي نص عادي، ورسالة ملف، وهي ملف ثنائي، مثل صورة أو PDF، ورسالة المسؤول، وهي نص عادي يتم إرساله أيضًا عبر لوحة المعلومات أو منصة الدردشة واجهة برمجة التطبيقات.
openChannel.sendUserMessage( MESSAGE ) { message, e ->
if (e != null ) { // Error.
return @sendUserMessage
}
}
يعد حجم Chat SDK عاملاً مهمًا يجب مراعاته عند دمجه في تطبيقك. حجم Chat SDK كما يلي:
في Sendbird، نحن مجموعة متنوعة من الأفراد المتواضعين والودودين والمجتهدين الذين يجمعهم هدف مشترك لبناء الجيل القادم من تقنيات الهاتف المحمول والاجتماعية، عبر الدردشة والصوت والفيديو، والتي تغير الطريقة التي نعمل بها ونعيش بها. نحن نبحث دائمًا عن أشخاص رائعين للانضمام إلى فريقنا. تحقق من صفحة الوظائف لدينا لمزيد من المعلومات.