انتقل إلى المحتوى

إضافة أجهزة اختبار الإشعارات

يمكنك استخدام أجهزة الاختبار (Test Devices) لمعاينة كيف تبدو إشعارات الدفع على الجهاز قبل إرسالها لمستخدمي التطبيق. للقيام بذلك، تحتاج إلى تسجيل جهازك (مع تثبيت تطبيقك عليه) كـ جهاز اختبار (Test Device).

لإضافة جهاز اختبار:

  1. انتقل إلى قسم Test devices في حساب Pushwoosh الخاص بك.
قسم أجهزة الاختبار في حساب Pushwoosh
  1. انقر على زر القائمة المنسدلة Add Device في الزاوية العلوية اليمنى واختر Push.
زر القائمة المنسدلة Add Device مع خيار Push في قسم أجهزة الاختبار

يمكنك إضافة جهاز اختبار إشعارات باستخدام إحدى طريقتين: الإعداد التلقائي باستخدام رمز QR أو الإعداد اليدوي.

إضافة أجهزة الاختبار تلقائيًا

Anchor link to

هذه الطريقة مناسبة فقط لأجهزة iOS و Android.

  1. في قسم Test Devices، انقر على Add Device واختر Push.
  2. امسح رمز QR الذي يظهر في النافذة المنبثقة. سيؤدي هذا إلى إنشاء رابط عميق (deep link) يمكن لـ Pushwoosh SDK تحليله لتسجيل جهازك تلقائيًا كجهاز اختبار.
  3. أضف الرابط العميق إلى إعدادات التطبيق:
  • لـ Android: أضفه إلى ملف AndroidManifest.xml.
  • لـ iOS: أضفه إلى ملف Info.plist.

لمزيد من التفاصيل، اتبع التعليمات الخاصة بـ Android و iOS في قسم التنفيذ.

إضافة أجهزة الاختبار يدويًا

Anchor link to

إذا كنت تفضل تسجيل جهاز اختبار يدويًا، فاتبع هذه الخطوات:

  1. احصل على معرف الجهاز (HWID) من استدعاء ناجح لواجهة برمجة التطبيقات /registerDevice.
  2. املأ الحقول المطلوبة:
    • Device Name: اسم وصفي لجهاز الاختبار (على سبيل المثال، “John’s Android”).
    • Device HWID: معرف الجهاز الفريد.
    • Device Type: حدد المنصة (على سبيل المثال، iOS, Android, Web).
    • Description (Optional): أضف أي ملاحظات أو تفاصيل حول الجهاز للرجوع إليها.
  3. انقر على Save لتسجيل جهاز الاختبار.

بمجرد التسجيل، سيكون جهاز الاختبار متاحًا في قسم Test Devices.

التنفيذ

Anchor link to
  1. دمج Pushwoosh SDK مع تطبيقك.

  2. أضف DeepLinkActivity إلى ملف AndroidManifest.xml الخاص بك:

<activity
android:name="com.pushwoosh.DeepLinkActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="pushwoosh-YOUR_PUSHWOOSH_APP_ID" />
</intent-filter>
</activity>

لا تنسَ استبدال YOUR_PUSHWOOSH_APP_ID في ملف xml أعلاه بمعرف تطبيق Pushwoosh الخاص بك.
مثال: <data android:scheme=“pushwoosh-ABCDE-EDCBA” />

  1. قم بتشغيل التطبيق للاشتراك في إشعارات الدفع.

  2. امسح رمز QR في نموذج Test Devices باستخدام أي تطبيق مناسب لمسح رموز QR*. ستظهر رسالة سريعة (toast message) تشير إلى حالة تسجيل جهاز الاختبار.

* معظم تطبيقات مسح رموز QR تتعامل مع هذه الروابط العميقة بشكل صحيح، وهنا بعض منها:

  1. دمج Pushwoosh SDK مع تطبيقك.

  2. أضف مخطط URL pushwoosh-YOUR_PUSHWOOSH_APP_ID إلى ملف Info.plist:

<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLName</key>
<string>com.pushwoosh.scheme</string>
<key>CFBundleURLSchemes</key>
<array>
<string>pushwoosh-YOUR_PUSHWOOSH_APP_ID</string>
</array>
</dict>
</array>

لا تنسَ استبدال YOUR_PUSHWOOSH_APP_ID في ملف XML أعلاه بمعرف تطبيق Pushwoosh الخاص بك.
مثال: pushwoosh-ABCDE-EDCBA

Info.plist

أضف UIApplicationSceneManifest إلى ملف Info.plist الخاص بك.
<key>UIApplicationSceneManifest</key>
<dict>
<key>UIApplicationSupportsMultipleScenes</key>
<true/>
<key>UISceneConfigurations</key>
<dict>
<key>UIWindowSceneSessionRoleApplication</key>
<array>
<dict>
<key>UISceneConfigurationName</key>
<string></string>
<key>UISceneDelegateClassName</key>
<string>$(PRODUCT_MODULE_NAME).SceneDelegate</string>
</dict>
</array>
</dict>
</dict>

SceneDelegate

أضف كود SceneDelegate كما هو موضح في المثال أدناه.
import SwiftUI
@main
struct DemoApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
class SceneDelegate: NSObject, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let _ = (scene as? UIWindowScene) else { return }
}
}
class AppDelegate: NSObject, UIApplicationDelegate, PWMessagingDelegate {
func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
let sceneConfig: UISceneConfiguration = UISceneConfiguration(name: nil, sessionRole: connectingSceneSession.role)
sceneConfig.delegateClass = SceneDelegate.self
return sceneConfig
}
}
  1. قم بتشغيل التطبيق للاشتراك في إشعارات الدفع.

  2. امسح رمز QR في نموذج Test Devices باستخدام أي ماسح ضوئي مناسب لرموز QR.