1. 简介
上次更新日期:2021 年 12 月 22 日
构建内容
在此 Codelab 中,您将学习如何在 WebView 中将事件从网页转发到原生代码,以便 GA4F 可以跟踪这些事件。
我们将使用示例 Hybrid Android 应用,该应用使用 WebView 调用网页。
学习内容
- 如何在 Hybrid 应用中初始化 GA4F (Google Analytics for Firebase)
- 如何在网页中创建自定义事件和参数
- 如何在 WebView 中将网页上的事件转发到原生代码
- 如何调试
- 如何导入事件并将其用于操作广告系列。
所需条件
- Android Studio 3.6 或更高版本
- Firebase 账号
2. 准备工作
获取代码
Firebase 指南文档在 GitHub 中提供了开发此项目所需的示例代码。
![]()
首先,您需要获取代码,并在您喜爱的开发环境中将其打开。我们将使用 2 个目录:android、web。“android”“Web”目录的目录目录对应的是应用将通过 WebView 调用的网页。
3. 创建和设置 Firebase 项目
如需开始使用 Firebase,您需要创建并设置 Firebase 项目。
创建 Firebase 项目
- 登录 Firebase。
在 Firebase 控制台中,点击“添加项目”(或“创建项目”),然后将您的 Firebase 项目命名为 Webview-test-codelab 或您喜欢的任何名称。
![]()
- 点击相应的项目创建选项。在系统提示是否接受 Firebase 条款时选择“接受”。您应为此项目启用 Google Analytics,因为您需要使用 Google Analytics 事件来跟踪操作事件并分析转化数据。
![]()
如需详细了解 Firebase 项目,请参阅了解 Firebase 项目。
4. Android Firebase 配置
配置 Android
- 在 Firebase 控制台中,选择左侧导航栏中的项目概览,然后点击“将 Firebase 添加至您的应用即可开始使用”下的 Android 按钮
您将在以下屏幕中看到对话框。
![]()
- 要提供的重要值是 Android 软件包名称,您可以使用以下步骤获取该名称。
- 在应用目录中,打开文件
android/app/src/main/AndroidManifest.xml。 - 在
manifest元素中,找到package属性的字符串值。这个值是 Android 软件包名称(类似于com.yourcompany.yourproject)。复制这个值。 - 在 Firebase 对话框中,将复制的软件包名称粘贴到
Android package name字段中。 - 除非您打算使用 Google 登录或 Firebase Dynamic Links,否则此处不需要 SHA-1 密钥(请注意,这些并非此 Codelab 的一部分)。如果您打算从 Google Play 导入
in_app_purchase数据,则稍后必须设置该密钥。 - 点击注册应用。
- 还是在 Firebase 中,按照说明下载配置文件
google-services.json。
![]()
- 转到应用目录,然后将您刚刚下载的
google-services.json文件移至android/app目录中。 - 返回 Firebase 控制台,跳过其余的步骤,然后返回 Firebase 控制台的主页面。
- 最后,您需要使用 Google 服务 Gradle 插件来读取 Firebase 生成的
google-services.json文件。 - 在 IDE 或编辑器中,打开
android/app/build.gradle,然后将以下代码行添加为文件的最后一行:
apply plugin: 'com.google.gms.google-services'
- 打开
android/build.gradle,然后在buildscript标记内添加一个新的依赖项:
buildscript {
repositories {
// ...
}
dependencies {
// ...
Classpath 'com.google.gms:google-services:4.3.3'
}
}
- 如果您的应用仍在运行,请将其关闭并重新构建,以允许 Gradle 安装依赖项。
您已完成 Android 应用的配置!
5. 在网络中开发 Google Analytics 网络界面并记录自定义事件
如需使用 Google Analytics 跟踪 WebView 中的事件,您需要将代码同时插入网站应用和 Android 应用。
在本部分中,我们来看一下您需要将哪些代码放到网络中。![]()
首先,创建要在 HTML 文件中使用的 JavaScript 文件。在示例代码中,名为 index.js 的 js 文件。您需要创建“logEvent”函数分别调用适用于 Android 的 AnayticsWebInterface 和适用于 iOS 的 messageHander,如以下代码所示。
![]()
在您希望跟踪事件的位置调用此函数,如下所示。
![]()
当事件在 Android 的 WebView 中触发时,“window.AnalyticsWebInterface”且会将事件连接到原生应用。
6. 托管网站目录以获取网页的网址
在应用的 WebView 中调用网页之前,您需要一个网页的网址。托管网页的方法有很多,但为了方便起见,在此 Codelab 中,我们将引导您使用 Firebase 托管服务。
- 在终端中,输入 Web 目录(例如
cd web)并运行以下命令: npm install -g firebase-tools- 这将安装 Firebase CLI。firebase loginfirebase init- 选择“Hosting”(托管)当系统询问您想设置哪项功能时。
- 选择您为 Android 应用设置的项目。
- 接受所有其余提示的默认值。
firebase deploy --only hosting- 部署到 Firebase Hosting。
![]()
7. 在 Android 应用中开发接口代码
要使用 Google Analytics 跟踪 WebView 中的事件,您需要将代码同时插入到网站和 Android 设备中。在本部分中,我们来看一下需要在 Android 应用中放置哪些代码。
创建“AnalyticsWebInterface.java”“AnalyticsWebInterface”了类。在该类中,您需要编写 @JavascriptInterface 代码,以连接网络 js 文件中的 logEvent 函数,如下所示。
![]()
接下来,您需要在 activity 中添加用于调用 WebView 的 JavaScript 界面,如下所示。
![]()
要查看其完整代码,请参阅您在“设置”部分下载的示例代码操作。
8. 检查和调试事件
对于调试事件,您可以在连接测试设备或启动模拟器后,在 Android Studio 终端中使用以下代码。
>adb shell setprop debug.firebase.analytics.app [应用软件包名称]
>adb shell setprop log.tag.FA VERBOSE
>adb shell setprop log.tag.FA-SVC VERBOSE
>adb logcat -v time -s FA FA-SVC
如果您的代码能够正常运行,您将看到如下所示的日志。
![]()
如果您想在 Firebase 控制台中查看,还可以使用“实时”标签页。转到 Firebase 控制台,然后点击如下所示的“实时”标签页。
然后,使用“添加对比项”过滤 Android 平台事件函数。
![]()
如果您的代码已正确实现,您会在“实时”标签页中看到来自 Android 应用的事件。
![]()
几小时后,您就可以在 Firebase 控制台的“事件”标签页中看到记录的事件。只需在 Firebase 控制台的“Analytics”部分点击事件标签页即可。您还可以点击事件 event1,查看事件中的值。
通过将标记为转化开关向右滑动,将event1标记为转化。
![]()
如果该事件位于“转化”标签页中,则表示您已成功将该事件标记为转化。Google Ads 现在可以从 Firebase 导入此事件。
![]()
出于调试目的,请使用 Firebase DebugView。如需了解详情,请参阅调试事件。
9. 在 Google Ads 中导入分析事件
完成 Firebase-Flutter 设置后,您就可以发布包含操作事件的应用广告系列了。首先,将 Firebase 与 Google Ads 相关联。将 Firebase 与 Google Ads 相关联后,应用广告系列即可导入 Firebase 事件。这样,Google Ads 就能帮助 Google Ads 详细了解受众群体,从而提升应用广告系列的效果。
- 点击 Project Overview 旁边的按钮,转到 Firebase 设置。
- 在集成标签页中,您将看到 Google Ads 和一个关联按钮。点击关联,然后点击继续。
![]()
- 选择 Google Ads 账号。
现在,Firebase 部分已完成。
转到 Google Ads。
- 登录,然后前往工具和设置 >衡量 >转化:将自定义事件作为转化导入。
- 点击 + 按钮添加新的转化操作。
![]()
- 选择 Google Analytics 4 媒体资源 (Firebase),然后点击继续。
![]()
- 您可以看到标记为转化的所有分析事件。找到我们之前实现的
event1事件。
![]()
- 检查相应操作,点击导入,然后点击继续。
![]()
将 event1 设置为转化操作后,您便可以发布操作广告系列,以定位可能会触发 event1 事件超过 5 次的用户。
10. 使用导入的事件发布与应用有关的 Action 广告系列
- 转到当前账号的“广告系列”标签,然后点击 + 按钮制作新的广告系列。点击[新广告系列],然后点击继续。
- 使用应用安装选项投放应用宣传广告系列。
![]()
- 输入应用名称、软件包名称或发布商,找到您的应用。
- 在出价部分的下拉菜单中选择应用内操作。
- 在提供的列表中找到您的自定义事件。设置目标每次转化费用,然后完成所有其他选项。
![]()
- 完成广告系列的设置。
11. 恭喜
恭喜!您已成功将 Firebase 与 Google Ads 集成!这有助于通过 Firebase 导入的事件提升广告系列的效果。
您学到的内容
- 如何在 Hybrid 应用中初始化 GA4F (Google Analytics for Firebase)
- 如何在网页中创建自定义事件和参数
- 如何在 WebView 中将网页上的事件转发到原生代码
- 如何调试
- 如何导入事件并将其用于操作广告系列。