تنبيه: لا تتوفر وثائق قديمة لهذا العنصر، لذا فإنك ترى الوثائق الحالية.
أصبح تنفيذ إشعارات الدفع لتطبيق Android الخاص بك ممكنًا الآن مع PushEngage. ما عليك سوى دمج SDK مرة واحدة، وتمكين فريق التسويق الخاص بك من إرسال رسائل سياقية وشخصية لمستخدمي تطبيق Android الخاص بك. ستحتاج إلى مساعدة المطور الخاص بك لتشغيل هذا لك.
إعداد مشروع Firebase
قبل البدء بإشعارات دفع التطبيق، تحتاج إلى التأكد من أن لديك حساب Firebase موجود.
1. تحتاج إلى تسجيل الدخول إلى وحدة تحكم Firebase، باستخدام حساب Google الخاص بك.
2. تحتاج بعد ذلك إلى النقر فوق إضافة مشروع أو تحديد مشروع موجود. انتقل إلى الخطوة 4 إذا اخترت مشروعًا موجودًا.
3. أدخل اسم مشروع وانقر فوق متابعة. في الشاشة التالية، انقر فوق إنشاء مشروع مع جميع التفاصيل المذكورة.
4. انقر فوق أيقونة Android لإضافة تطبيق Android إلى المشروع.
5. في الشاشة التالية، أدخل اسم حزمة تطبيقات Android الخاصة بك وأعطِ اسم تطبيق Android الذي تحاول دمجه، وانقر فوق تسجيل.
6. قم بتنزيل ملف google-services.json وضعه في الدليل الجذر لوحدة تطبيق Android الخاصة بك.
7. في وحدة تحكم Firebase، انقر فوق أيقونة الإعدادات بجوار نظرة عامة على المشروع في أعلى اليسار وحدد إعدادات المشروع. انقر فوق إنشاء مفتاح خاص جديد.
احفظ ملف .json الذي تم تنزيله من الخطوة السابقة بأمان حيث سيتم استخدامه للإعداد في لوحة تحكم PushEngage.
8. في وحدة تحكم Firebase، انقر فوق أيقونة الإعدادات بجوار نظرة عامة على المشروع في أعلى اليسار وحدد "إعدادات المشروع".
حدد علامة التبويب المراسلة السحابية، والتي سيوجد تحتها معرف المرسل.

دمج FCM مع لوحة تحكم PushEngage
بمجرد إنشاء المشروع في Firebase، يمكنك بعد ذلك دمج معرف المرسل في لوحة تحكم PushEngage.
1. في حساب PushEngage الخاص بك، انتقل إلى إعدادات الموقع » التثبيت
2. أثناء اختيار منصتك، حدد علامة التبويب Android SDK.
3. قم بتكوين معرف المرسل وملف JSON لحساب الخدمة الخاص بك

4. انسخ معرف التطبيق المطلوب لتهيئة PushEngage Android SDK في تطبيقك.
إضافة تبعيات SDK
حان الوقت الآن لإضافة تبعيات SDK. نضيف السطر التالي في ملف build.gradle الرئيسي الخاص بك.
1. إذا لم يكن مشروعك يستخدم تعريف مستودع مركزي، ففي ملف build.gradle على مستوى المشروع، أضف الأسطر التالية. وإلا يمكنك الانتقال إلى القسم الثاني.
// Project level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
// ...
// Add this line
classpath "com.google.gms:google-services:4.3.10"
}
}
allprojects {
repositories {
// ...
// Check that you have the following line (if not, add it):
google()
maven {url 'https://jitpack.io' }
}
}
إذا كان مشروعك يستخدم إعلان مستودع مركزي، فأضف ما يلي إلى ملف settings.gradle الخاص بك.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
//add this line
maven { url 'https://jitpack.io' }
}
2. في ملف build.gradle على مستوى التطبيق، أضف ما يلي:
plugins {
id 'com.android.application'
// Add this line
id 'com.google.gms.google-services'
}
dependencies {
// ...
// Add the following lines
implementation 'com.github.awesomemotive:pushengage-android-sdk:0.0.5'
implementation platform('com.google.firebase:firebase-bom:26.1.1')
}
تهيئة SDK
أضف كتلة رمز تهيئة PushEngage SDK إلى طريقة onCreate في فئة التطبيق. يجب استبدال PUSHENGAGE_APP_ID بمعرف التطبيق الذي حصلت عليه من لوحة تحكم PushEngage.
ملاحظة: إذا لم يكن تطبيق الهاتف المحمول الخاص بك يحتوي على فئة مخصصة تمتد من فئة التطبيق لـ PushEngage، فأنت بحاجة إلى إنشاء فئة تمتد من فئة التطبيق.
إليك مثال في Java
public class PEApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// PushEngage SDK Initialization code
PushEngage pushEngage = new PushEngage.Builder()
.addContext(getApplicationContext())
.setAppId("PUSHENGAGE_APP_ID")
.build();
// The small icon is displayed on the top status bar and in the notification.
// By default PushEngage displays a bell icon, however It is recommended to
// customize this so users easily recognize notifications from your app.
PushEngage.setSmallIconResource("your_icon_name");
}
}
إليك مثال في Kotlin
class PEApplication : Application() {
override fun onCreate() {
super.onCreate()
// PushEngage SDK Initialization code
val pushEngage = PushEngage.Builder()
.addContext(applicationContext)
.setAppId("PUSHENGAGE_APP_ID")
.build()
// The small icon is displayed on the top status bar and in the notification.
// By default PushEngage displays a bell icon, however It is recommended to
// customize this so users easily recognize notifications from your app.
PushEngage.setSmallIconResource("your_icon_name");
}
}
لتسجيل اسم فئتك المخصصة، التي تمتد من فئة التطبيق، انتقل إلى ملف Manifest.xml الخاص بتطبيقك. ابحث عن السطر الذي يقول "android:name=."PEApplication""، واستبدل "PEApplication" باسم فئتك المخصصة. سيبدو الأمر كالتالي:
بمجرد تكوين جميع الخطوات المذكورة أعلاه، يمكنك إرسال إشعارات دفع إلى تطبيق Android الخاص بك. قم ببناء وتشغيل التطبيق على جهاز فعلي وأرسل إشعارات دفع تجريبية من لوحة تحكم PushEngage.
التعامل مع إذن الإشعارات لنظام Android 13 وما فوق
يتطلب نظام Android 13 إذنًا لبعض الأجهزة قبل إرسال أي إشعارات إليها. لذا، إذا كنت ترغب في الإعداد، فقم بإضافة هذا. إليك الكود الذي ستحتاجه.
استخدم طريقة SDK المضمنة لطلب إذن الإشعارات.
/**
* Request notification permission using the PushEngage SDK
* SDK automatically calls subscribe when permission is granted
*/
private void requestNotificationPermissionUsingSDK() {
PushEngage.requestNotificationPermission(this, new PushEngagePermissionCallback() {
@Override
public void onPermissionResult(boolean granted, Error error) {
if (granted) {
// Permission granted - SDK automatically calls subscribe
Log.d("MainActivity", "Notification permission granted");
Toast.makeText(MainActivity.this, "Permission granted and subscribed!", Toast.LENGTH_SHORT).show();
} else {
// Permission denied, handle accordingly
Log.d("MainActivity", "Notification permission denied");
Toast.makeText(MainActivity.this, "Permission denied!", Toast.LENGTH_SHORT).show();
if (error != null) {
Log.e("MainActivity", "Permission error: " + error.getMessage());
}
}
}
});
}
التحقق من حالة الإذن
يمكنك أيضًا التحقق من حالة إذن الإشعارات الحالية:
String permissionStatus = PushEngage.getNotificationPermissionStatus();
switch (permissionStatus) {
case "granted":
Log.d("Permission", "Notifications are allowed");
break;
case "denied":
Log.d("Permission", "Notifications are denied");
break;
default:
Log.d("Permission", "Unknown permission status");
break;
}
إذا كنت ترغب في استكشاف المزيد من إمكانيات Android SDK، يمكنك الاطلاع على وثائق واجهة برمجة التطبيقات المفصلة الخاصة بنا .
إذا واجهت أي مشاكل، يرجى الاتصال بنا بالنقر هنا. سيكون فريق الدعم لدينا قادرًا على مساعدتك.