【问题标题】:How can I import firebase in-app-messaging-display api's source code into my android project?如何将 firebase in-app-messaging-display api 的源代码导入我的 android 项目?
【发布时间】:2019-02-17 21:28:29
【问题描述】:

我正在尝试自定义 Firebase in-app-messaging-display 的“仅图像”和“模态”模式的 UI。所以我转向官方文档,但它很简单,说: 创建自己的显示器是一个两步过程: 1.编写自己的 FirebaseInAppMessagingDisplay 类实现。 2.使用无头 Firebase 应用内消息 SDK 注册该实现。

我想知道如何将 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 文件中,这个: implementation project(':libs:firebase-inappmessaging-display ') 到我的应用程序的 gradle 依赖项中。同步构建 Android Studio 时会报告如下错误: 错误:无法解析“:XXXXXXXX”的依赖关系:无法解析项目:libs:firebase-inappmessaging-display。

任何建议都将受到高度赞赏。

【问题讨论】:

  • 你有什么解决办法吗?我也是这种情况。
  • 嗨@geekShaw,你能提供更多关于你如何解决它的信息吗?我尝试按照您的建议导入 firebase sdk,但无法将其添加到我的项目中。非常感谢。

标签: android firebase firebase-in-app-messaging


【解决方案1】:

文档上的信息有点混乱。我也被同样的问题困扰了很长时间。其实很简单。

在您的应用级 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)
}

【讨论】:

  • 感谢您的回答。我通过将firebase sdk的源代码导入为子项目而不是库并修改它们的代码来解决了这个问题。
  • @SunSun 我正在尝试实现您的代码。我在控制台中创建了一个在启动时显示的活动,但从未调用过回调。您如何将此代码与特定活动联系起来?坦克你这么多
猜你喜欢
  • 1970-01-01
  • 2011-06-06
  • 1970-01-01
  • 1970-01-01
  • 2020-06-22
  • 1970-01-01
  • 1970-01-01
  • 2020-06-30
  • 1970-01-01
相关资源
最近更新 更多