Я пытаюсь создать игру с FireBase Google и Facebook входа в систему.Я знаю, что можно использовать firebase с единицей, но я не хочу создавать оба метода входа по отдельности, когда существует что-то вроде FirebaseUI.
Итак, я создал плагин Android с аутентификацией FirebaseUI.Я проверил это в новом проекте Android и все работает отлично.Но когда я использую свой плагин в единстве, я должен добавить свой собственный gradle (mainTemplate.gradle
) с зависимостями для firebaseUI.
Проблема в том, что в библиотеке firebase auth есть значение по умолчанию, и когда игра собирается, значения из моей библиотеки (default_web_client_id
и т. д.) перезаписываются значением по умолчанию.
Почти через неделю я нашел решение, но надеюсь, что есть другой способ.
Мое решение: BuildAndroid-библиотека с Firebase, скопировать библиотеку (.aar
) в Assets / Plugins, экспортировать проект Unity с этой библиотекой в Idea, затем скопировать весь файл values.xml
(созданный из google-services.json
) и приложение Facebook appId в папку res вэкспортированный проект.(затем построить из Idea)
Это работает, но с помощью этого метода у меня есть default_web_client_id
3 раза в проекте (1x из моей библиотеки, 1x из зависимости FirebaseUI и 1x из скопированной values.xml
, которая переопределяет их).Это не проблема, но я думаю, что в этом нет необходимости.
Есть ли более элегантный способ работы с библиотеками firebaseUI и android?
mainTemplate (зависимость):
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
def room_version = "1.1.1"
implementation "android.arch.persistence.room:runtime:$room_version"
annotationProcessor "android.arch.persistence.room:compiler:$room_version"
implementation 'com.google.code.gson:gson:2.8.2'
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation "android.arch.lifecycle:extensions:1.1.1"
implementation "android.arch.lifecycle:viewmodel:1.1.1"
annotationProcessor "android.arch.lifecycle:compiler:1.1.1"
implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
implementation 'com.facebook.android:facebook-android-sdk:4.41.0'
**DEPS**}