# الأسئلة الشائعة حول Outsystems

## إدارة ملفات google-services في المشاريع التي تحتوي على عدة أسماء حزم محتملة

في المكون الإضافي، يمكنك إضافة عدة ملفات `google-service.json` إلى مشروعك، والتي سيتم اختيارها بناءً على اسم الحزمة (package name) المحدد أثناء عملية البناء.

إذا كنت ترغب في التبديل بين عدة مشاريع Firebase (لكل منها ملف تكوين `google-services.json` خاص به)، اتبع الخطوات التالية:

1. أنشئ أرشيف ZIP. ضع كل ملف `google-services.json` في أرشيف `.zip` باسم `google-services.zip`.

2. عند إضافة ملف `.zip` هذا إلى المشروع، اضبط الإجراء على Deploy to Target Directory وحدد الدليل الهدف كـ `google-services/${package_name}`.

على سبيل المثال، إذا كان اسم حزمة المشروع هو `com.pushwoosh.demo`، فسيكون الدليل الهدف هو `google-services/com.pushwoosh.demo`.

<img src="/outsystems-outsystems-faq-1.webp" alt=""/>

3. أثناء بناء المشروع، حدد اسم الحزمة (package name) المقابل.

<img src="/outsystems-outsystems-faq-2.webp" alt=""/>

## حل التعارضات بين المكونات الإضافية المتعددة التي تعتمد على FirebaseMessagingService

لا يقوم Android بحل مثل هذه التعارضات تلقائيًا، لذا يجب القيام بذلك يدويًا. نظرًا لأن كل مكون إضافي له منطقه الخاص، لا يمكننا توفير كود عالمي يعمل مع جميع المكونات الإضافية الممكنة.

إليك كيفية معالجة التعارضات:

1. اكتب فئة موجه (router class) في Java لمعالجة التعارض. يجب تسمية هذه الفئة `FirebaseMessagingRouterService`.

راجع الدليل للحصول على مثال: [استخدام Pushwoosh SDK مع خدمات FCM الأخرى](/ar/developer/pushwoosh-sdk/android-sdk/android-faq/#using-pushwoosh-sdk-with-other-fcm-services).

2. قم بتسمية ملف الفئة. يجب أن يكون اسم الملف الذي يحتوي على هذه الفئة هو `FirebaseMessagingRouterService.java`.

3. ضع هذا الملف في أرشيف `.zip` باسم `FirebaseMessagingRouterService.zip`.

4. أضف هذا الأرشيف إلى موارد مشروع Outsystems الخاص بك.

5. اضبط الإجراء على Deploy to Target Directory، وحدد الدليل الهدف كـ `FirebaseMessagingRouterService`.

<img src="/outsystems-outsystems-faq-3.webp" alt=""/>