الأسئلة الشائعة حول Mendix
ما هو إصدار Studio Pro الذي تتطلبه وحدة Pushwoosh؟
Anchor link toStudio Pro 11.12.3 أو أحدث. تم بناء حزمة الوحدة باستخدام هذا الإصدار من تنسيق النموذج، ويرفض Studio Pro فتح حزمة تم إنتاجها بواسطة إصدار أحدث منه.
هناك سبب ثانٍ لعدم استخدام إصدار أقدم. تقوم Mendix بنقل Studio Pro والقالب الأصلي و React Native معًا، لذا يحدد إصدار Studio Pro إصدار React Native الذي يعمل عليه تطبيقك، ويتم بناء الوحدة مقابل React Native 0.84. الخريطة الموثوقة هي mendix_version.json في مستودع القالب الأصلي.
لماذا لا يحدث شيء بعد إضافة الوحدة؟
Anchor link toمن المرجح أن التطبيق يعمل في تطبيق Make It Native، الذي لا يمكن أن يحتوي على كود أصلي من طرف ثالث، لذا تفشل جميع إجراءات Pushwoosh بصمت. قم ببناء تطبيق مطور مخصص أو بناء أصلي حقيقي بدلاً من ذلك.
إذا كان التطبيق بالفعل بناءً أصليًا، تحقق من أن ودجة Pushwoosh events موجودة على الصفحة التي يتم تحميلها أولاً وأن خاصية Application Code الخاصة بها مملوءة. بدون Application Code صالح، لا يبدأ SDK.
لماذا تتوقف الإشعارات عن الوصول على Android؟
Anchor link toهناك خدمتا إشعارات مسجلتان لنفس حدث Firebase وتتداخلان مع بعضهما البعض.
تستبدل Pushwoosh إشعارات الدفع المدمجة في تطبيق Mendix بدلاً من العمل بجانبها. في Native Mobile Builder، قم بتعيين الإمكانيات على النحو التالي:
- Push notifications: معطلة.
- Firebase Android: مفعلة، بحيث يتم التقاط
google-services.json.
يجب تسجيل خدمة واحدة فقط لـ com.google.firebase.MESSAGING_EVENT. إذا كان تطبيقك يحتوي على مكون إضافي آخر يسجل خدمة أيضًا، راجع استخدام Pushwoosh SDK مع خدمات FCM الأخرى.
هل أحتاج إلى استدعاء Initialize عند استخدام ودجة أحداث Pushwoosh؟
Anchor link toلا. تقوم الودجة بتهيئة SDK بنفسها من خاصية Application Code الخاصة بها. يوجد إجراء Initialize للتطبيقات التي تبدأ SDK من nanoflow بدلاً من وضع الودجة، على سبيل المثال عندما لا يكون Application Code معروفًا حتى يقوم المستخدم بتسجيل الدخول.
استدعاء كليهما غير ضار، لكن الودجة تكون قد قامت بالعمل بالفعل بحلول وقت تشغيل nanoflow الخاص بك.
كيف يمكنني تمرير JSON إلى SetTags أو PostEvent من تعبير Mendix؟
Anchor link toاكتب JSON بعلامات اقتباس مفردة، حتى تظل علامات الاقتباس المزدوجة بداخلها غير مهربة:
'{"Language":"en","Level":7}'يتم تحديد السلسلة النصية في تعبير Mendix بعلامات اقتباس مفردة، مما يترك علامات الاقتباس المزدوجة لـ JSON حرة للاستخدام كما هي. مضاعفتها أو تهريبها بشرطة مائلة عكسية ينتج عنه سلسلة نصية لا يمكن للإجراء تحليلها، ويرفضها الإجراء مع خطأ في التحليل.
كيف يمكنني إيقاف التنبيه النظامي أثناء فتح التطبيق؟
Anchor link toبشكل افتراضي، يتم عرض الإشعار الذي يصل أثناء فتح التطبيق كتنبيه من قبل النظام، ويعمل nanoflow الخاص بـ On push received للودجة أيضًا. استدعِ إجراء SetShowForegroundAlert بالقيمة false لمنع التنبيه والتعامل مع الإشعار فقط في nanoflow، على سبيل المثال عن طريق عرض رسالة خاصة بك أو تحديث قائمة.
استدعِ هذا الإجراء على iOS فقط. لا يعرض Android SDK هذا الإعداد، ويقوم الغلاف JavaScript باستدعاء الطريقة الأصلية بشكل غير مشروط، لذا على Android يثير الإجراء خطأ بدلاً من عدم القيام بأي شيء.
هل يمكنني بناء التطبيق الأصلي باستخدام Studio Pro لنظام Mac؟
Anchor link toليس باستخدام Native Mobile Builder، الذي يأتي فقط مع إصدار Windows من Studio Pro. كل شيء آخر يعمل على بناء Mac، بما في ذلك كتابة الوحدة، ووضع الودجة وتصدير التطبيق.
على macOS، قم بتكوين القالب الأصلي باستخدام أداة سطر الأوامر @mendix/native-mobile-toolkit، التي تحدد الإمكانيات، وعنوان URL لوقت التشغيل، ومعرف التطبيق والتبعيات الأصلية من ملف تكوين. ثم قم ببناء مشاريع iOS و Android التي تم إنشاؤها محليًا باستخدام Xcode و Gradle.
كيف يمكنني إرسال إشعار اختباري إلى جهاز واحد محدد؟
Anchor link toاستدعِ إجراء GetHwid للحصول على HWID للجهاز، وقم بتوجيه الإشعار إلى هذا HWID من لوحة تحكم Pushwoosh أو واجهة برمجة تطبيقات الخادم. تسجيل الجهاز كجهاز اختبار هو الطريقة الأخرى للقيام بذلك، الموضحة في اختبر تكاملك.