Как я могу импортировать исходный код API-интерфейса firebase in-app-messaging-display в мой проект Android?

Я пытаюсь настроить пользовательский интерфейс firebase in-app-messaging-display для режимов "Только изображение" и "Модальный". Итак, я обратился к официальной документации, но это довольно просто, сказав: "Создание собственного дисплея - это двухэтапный процесс: 1. Напишите свою собственную реализацию класса FirebaseInAppMessagingDisplay. 2. Зарегистрируйте эту реализацию с помощью автономного SDK для обмена сообщениями Firebase In-App.

Интересно, как я могу импортировать исходный код in-app-messaging-display в мой проект и заставить его работать как библиотека.

Я скачал его исходный код с github: https://github.com/firebase/firebase-android-sdk/tree/master/firebase-inappmessaging-display, попытался импортировать его как модуль, но после того, как я выбрал каталог Source Android Studio намекает на следующее: Укажите местоположение проекта Gradle или Android Eclipse. Я также попытался скопировать исходный код в каталог libs моего проекта и добавил следующее: include ': libs: firebase-inappmessaging-display' в мой файл settings.gradle и это: проект реализации (':libs:firebase-inappmessaging-display') в зависимости от gradle моего приложения. При построении синхронизации Android Studio сообщает об ошибках, подобных этой: ОШИБКА: невозможно разрешить зависимость для ':XXXXXXXX': не удалось разрешить проект:libs:firebase-inappmessaging-display.

Любое предложение будет высоко оценено.

0 ответов

Информация на документе немного сбивает с толку. Я тоже застрял с этой проблемой на долгое время. На самом деле это очень просто.

Добавьте эти зависимости в файл Gradle уровня вашего приложения.

implementation 'com.google.firebase:firebase-core:16.0.8'
implementation ("com.google.firebase:firebase-inappmessaging:17.0.3")

Зарегистрируйте свой компонент DisplayMessage при начале работы.

import com.google.firebase.inappmessaging.FirebaseInAppMessaging
import com.google.firebase.inappmessaging.FirebaseInAppMessagingDisplay

///////

override fun onStart() {
    super.onStart()
    Log.e("MESSAGE", "activity started")
    var firebaseInAppMessagingDisplay = FirebaseInAppMessagingDisplay { inAppMessage, cb ->
        // You can show the message here.
        // The variable inAppMessage has all information about the campaign that we putting in console (title, content, image url.. etc)
        Log.e("MESSAGE", "Display Message callback invoked")
    }
    FirebaseInAppMessaging.getInstance().setMessageDisplayComponent(firebaseInAppMessagingDisplay)
}
Другие вопросы по тегам