React Native应用程序中添加Firebase Analytics

React Native应用程序中添加Firebase Analytics

大家好,我们终于推出了一个完整的系列,用于将 Firebase 特性/功能集成到适用于 Android 和 iOS 的 React Native 应用程序中。 我相信你们都听说过 火力基地,如果没有那么您应该了解它,因为它是创建成功应用程序的完整套件。 它可以帮助您加速和扩展应用程序开发,而无需管理基础设施,因此使用 Firebase,您可以专注于应用程序开发而不是管理基础设施。 在本系列中,我们将探讨 Firebase Analytics、数据库、身份验证、应用内消息传递、推送通知、AdMob 等。 因此,让我们开始第一个示例,在 React Native 应用程序中添加 Firebase 分析。

在这个完整的系列中,我们将使用 反应原生 Firebase 这是一个非常简单的集成库并提供了很多功能。 反应原生 Firebase 是官方推荐的软件包集合,为 Android 和 iOS 应用程序上的所有 Firebase 服务带来 React Native 支持。

推荐:在React Native应用程序中使用Firebase进行电子邮件身份验证

Firebase 分析

Google Analytics for Firebase 收集您的应用的使用情况和行为数据。 Firebase Analytics 提供最多 500 个不同事件的免费、无限制报告。 它的两个主要问题是:

  1. 活动:您的应用中发生了什么,例如用户操作、系统事件或错误
  2. 用户属性:您定义的用于描述用户群细分的属性,例如语言偏好或地理位置

SDK 自动捕获某些关键事件和用户属性。 将 Firebase 分析与您的应用集成后,它就会开始记录一些 事件 (ad_click、app_clear_data、app_remove、app_update 等)和 用户属性 (年龄、应用程序版本、国家/地区、设备详细信息等),无需编写任何代码。 您还可以定义自己的自定义事件来衡量对您的业务特别重要的事情。 Analytics 提供了许多不同的预定义事件来跟踪用户行为。

自定义、预定义和保留事件

市场上有很多工具可以为您的应用程序提供分析,但 Google Analytics 的优点在于其智能事件捕获功能。 有这么多 预约活动 分析会自动捕获,并为您提供捕获任何您想要的自定义事件的工具。

您可以捕捉任何 自定义事件 非常容易使用 日志事件 您只需在其中传递事件名称和要在该事件上捕获的有效负载即可。 请尽量避免使用 预留活动,如果您使用任何类似于保留事件名称的事件名称,它将引发错误。

analytics().logEvent('my_custom_event', {
  id: 101,
  item: 'My Product Name',
  description: ('My Product Desc 1', 'My Product Desc 2'),
});

如果我们谈论 预定义事件 那么Firebase提供了很多 预定义事件方法 这将帮助您从不同类型的应用程序(例如电子商务、旅行和游戏应用程序)捕获事件。 您可以轻松使用任何预定义事件,例如

analytics().logAddPaymentInfo({
  coupon: 'OfferZero',
  currency: 'INR',
  items: ('T-Shirt'),
  payment_type: 'Credit Card',
  value: 1000,
});

屏幕追踪

在分析领域,屏幕跟踪发挥着重要作用,因为它显示了应用程序用户对不同功能的兴趣。 例如,如果您的应用程序中有 10 个不同的功能,并且每个功能都在不同的屏幕上提供,那么根据屏幕跟踪,您可以轻松找到哪个功能最受欢迎以及哪个功能需要更新。

我们都知道 React Native 应用程序在单个 活动/视图控制器,这意味着本机 Firebase SDK 不会跟踪任何屏幕更改。 在 React Native 应用程序中实现导航的方法有很多种,因此没有“万能”的屏幕跟踪解决方案。 但是我们有一些预定义的事件可以帮助我们做到这一点,例如 日志屏幕视图

借助 logScreenView 事件,您可以轻松捕获屏幕的移动

await analytics().logScreenView({
  screen_name: currentRouteName,
  screen_class: currentRouteName,
});

您可以在使用时看到相同的用法 反应导航 和 反应本机导航。

我认为这就足够了,现在我们可以转向代码并了解如何在 React Native 应用程序中集成 Firebase/Google 分析。

制作 React Native 应用程序

React Native 入门将帮助您更多地了解如何制作 React Native 项目。 我们将使用 React Native 命令行界面来制作我们的 React Native 应用程序。

如果您之前安装了全局的react-native-cli软件包,请将其删除,因为它可能会导致意外问题:

npm uninstall -g react-native-cli @react-native-community/cli

运行以下命令创建一个新的 React Native 项目

npx react-native init ProjectName

如果你想使用特定的 React Native 版本启动一个新项目,你可以使用 –version 参数:

npx react-native init ProjectName --version X.XX.X

注意如果上述命令失败,您可能使用的是旧版本 react-native 或者 react-native-cli 在您的电脑上全局安装。 尝试卸载 cli 并使用 npx 运行 cli。

这将在项目目录中创建一个带有名为 App.js 的索引文件的项目结构。

Firebase SDK 集成

要从任何 React Native Firebase 示例开始,您需要将 Firebase 集成到您的应用程序中,我专门为此详细制作了一篇单独的文章,您将在其中看到在 Android 版 React Native 应用程序中添加 Firebase 的点对点过程,以及iOS 两者都有。

请访问如何在 Android 和 iOS 应用程序中集成 Firebase,然后返回执行下一步。

完成 Firebase 集成后,您可以安装更多依赖项。

安装依赖项

要安装依赖项,请打开终端并使用以下命令跳转到您的项目

cd ProjectName

对于 React Native Firebase,我们需要安装和设置应用程序模块

npm install @react-native-firebase/app --save

现在安装分析模块

npm install @react-native-firebase/analytics --save

此命令会将所有依赖项复制到您的 node_module 目录中。 –save 是可选的,它只是更新 package.json 文件中的依赖项。

CocoaPods 安装

React Native 0.60 更新后,他们引入了自动链接,因此我们不需要链接库,但对于 iOS,我们需要安装 pod。 因此要安装 pod,请使用

cd ios/ && pod install --repo-update && cd ..

集成 Firebase Analytics 的代码

请在任何代码编辑器中打开 App.js 并将代码替换为以下代码

应用程序.js

// React Native Firebase
// #1 Add Firebase Analytics in React Native App
//https://aboutreact.com/react-native-firebase-analytics

// Import React in our code
import React from 'react';

// Import all the components we are going to use
import {
  SafeAreaView,
  TouchableOpacity,
  StyleSheet,
  View,
  Text,
} from 'react-native';

// Import Firebase Analytics
import analytics from '@react-native-firebase/analytics';

const App = () => {
  const realtimeLogContent = () => {
    analytics().logSelectContent({
      content_type: 'Button Clicked',
      item_id: 'button1',
    });
  };

  const logCustomeEvent = () => {
    analytics().logEvent('my_custom_event', {
      id: 101,
      item: 'My Product Name',
      description: ('My Product Desc 1', 'My Product Desc 2'),
    });
  };

  return (
    <SafeAreaView style={styles.container}>
      <View style={styles.container}>
        <Text style={styles.heading}>
          React Native Firebase
        </Text>
        <Text style={styles.normalTextStyle}>
          #1 Firebase Analytics
        </Text>
        <View style={styles.innerContainer}>
          <Text style={styles.normalTextStyle}>
            Log React Time Content
          </Text>
          <TouchableOpacity
            activeOpacity={0.7}
            style={styles.buttonStyle}
            onPress={realtimeLogContent}>
            <Text style={styles.buttonTextStyle}>
              Click Button
            </Text>
          </TouchableOpacity>
          <Text style={styles.normalTextStyle}>
            Trigger My Custom Event
          </Text>
          <TouchableOpacity
            activeOpacity={0.7}
            style={styles.buttonStyle}
            onPress={logCustomeEvent}>
            <Text style={styles.buttonTextStyle}>
              Create Custom Event
            </Text>
          </TouchableOpacity>
        </View>
      </View>
      <Text
        style={{
          fontSize: 16,
          textAlign: 'center',
          color: 'grey',
        }}>
        www.aboutreact.com
      </Text>
    </SafeAreaView>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: 'white',
    padding: 10,
    alignItems: 'center',
  },
  innerContainer: {
    flex: 1,
    alignItems: 'center',
  },
  heading: {
    fontSize: 30,
  },
  buttonStyle: {
    minWidth: 300,
    justifyContent: 'center',
    padding: 10,
    backgroundColor: '#8ad24e',
  },
  buttonTextStyle: {
    color: 'white',
    textAlign: 'center',
  },
  normalTextStyle: {
    color: 'black',
    textAlign: 'center',
    marginVertical: 20,
    fontSize: 18,
  },
});

export default App;

运行 React Native 应用程序

再次打开终端并使用跳转到您的项目。

cd ProjectName

1. 启动 Metro Bundler

首先,您需要启动 Metro,React Native 附带的 JavaScript 捆绑器。 要启动 Metro 捆绑程序,请运行以下命令

npx react-native start

一旦您启动 Metro Bundler,它将永远在您的终端上运行,直到您将其关闭。 让 Metro Bundler 在自己的终端中运行。 打开一个新终端并运行该应用程序。

2.启动React Native应用程序

在 Android 虚拟设备或真实调试设备上运行项目

npx react-native run-android

或在 iOS 模拟器上运行(仅限 macOS)

npx react-native run-ios

输出截图

反应本机火力分析
google_analytics_dashboard1
google_analytics_dashboard2

这就是您如何将 Firebase Analytics 集成到适用于 Android 和 iOS 的 React Native 应用程序中。 如果你想禁用Firebase的自动初始化,你可以看到 。 如果您有任何疑问或想分享有关该主题的内容,您可以在下面发表评论或在此处联系我们。 

推荐:12个Shopify电子商务商业创意理念


发表评论