3

Это моя структура папки проекта.


Применение/
    FCM/
        FcmMessagingService.class
        FcmRegistrationService.class
    Google-services.json
    Android-manifest.xml

Android-Manifest.xml
Firebase облачные сообщения в проекте андроидной библиотеки.

<service android:name=".fcm.FcmRegistrationService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/> 
     </intent-filter> 
</service> 

<service android:name=".fcm.FcmMessagingService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.MESSAGING_EVENT"/> 
     </intent-filter> 
</service> 

библиотека (подмодуль)/
    ТСМ/
        LibMessagingService.class
        LibRegistrationService.class
    Andro Ид Manifest.xml

Android-Manifest.xml

<service android:name=".fcm.LibRegistrationService"> 
      <intent-filter> 
       <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/> 
      </intent-filter> 
</service> 

<service android:name=".fcm.LibMessagingService"> 
      <intent-filter> 
       <action android:name="com.google.firebase.MESSAGING_EVENT"/> 
      </intent-filter> 
</service> 

С выше реализации я могу в состоянии захватить INSTANCE_ID_EVENT и MESSAGING_EVENT, только из классов обслуживания приложения. Классы службы firebase в библиотечном модуле вообще не запускаются.

Возможно ли инициировать оба класса обслуживания как в модуле приложения, так и в библиотеке, когда получаются сообщения о пожарной базе?

+0

Вы нашли решение? – Blagojco

+2

@Blagojco Да, я нашел для этого работу. В моей библиотеке я добавил фактические службы FCM, а классы сервиса FCM-приложения расширят возможности FCM моей библиотеки вместо сервисов Google FCM. – Karthik

ответ

0

У меня не возникло проблем с его внедрением в библиотечном модуле. Я только что реализовал все службы в библиотеке и объявил их в манифесте клиента. Вот как выглядит мой проект: enter image description here

Файл google-services.json находится в каталоге приложений клиентов. Файл клиента build.gradle имеет внутри apply plugin: 'com.google.gms.google-services'

0

Слишком заставило его работать, мне тоже пришлось зарегистрировать библиотечную службу в манифесте Lib, а также манифест App. пытаясь выяснить, что на самом деле требуется

`<service 
    android:name="com.libPackage.FCMService"> 
    <intent-filter> 
     <action android:name="com.google.firebase.MESSAGING_EVENT"/> 
    </intent-filter> 
</service>` 
Смежные вопросы