Внедрение Firebase внутри библиотеки

Я хочу внедрить систему уведомлений Friebase внутри библиотеки, которую я хочу использовать в качестве SDK во многих приложениях.

Firebase теперь запрашивает идентификатор приложения, но я реализую его внутри библиотеки, поэтому нет идентификатора приложения.

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

Заранее спасибо.

Solutions Collecting From Web of "Внедрение Firebase внутри библиотеки"

Да, вы действительно можете это сделать, в вашей библиотеке build.gradle поместите это внутри поля defaultConfig

 buildConfigField("String", "FIREBASE_APP_KEY", "\"${firebaseAppKey}\"") 

Тогда внутри gradle.properties вашего проекта

firebaseAppKey = <yourFirebaseAppSecret>;

Для каждого проекта / приложения вы должны определить эту переменную в своих параметрах gradle.properties .

Вам нужно будет создать приложение firebase для каждого проекта , но теперь ваша библиотека может иметь Firebase SDK.

Если вы хотите получить доступ к этому значению переменной среды, используйте BuildConfig.FIREBASE_APP_KEY (например, экземпляр firebase).

Один из вариантов заключается в том, чтобы пользователь вашей библиотеки создал проект Firebase, а затем передал полученный файл google-services.json в свое приложение, и ваша библиотека может зависеть от этого.

Насколько я знаю, вы не можете.

Для каждого проекта Firebase требуются идентификаторы пакетов, чтобы однозначно идентифицировать каждое из своих приложений.

Вам также необходимо настроить каждый модуль со своим собственным google-services.json , который создается специально для каждого идентификатора.

Если вы можете использовать один и тот же пакет для всех своих приложений, устройство или сам Play Store не смогут отличать один от другого, а не вариант.

Вы можете извлечь всю логику Firebase в свою библиотеку, но все равно вам нужно будет сконфигурировать каждое приложение, чтобы предоставить уникальный идентификатор пакета, и вам также нужно будет отправить уведомление для каждого идентификатора.