首页 > 解决方案 > 在 Expo Go 应用程序中使用 Expo Firebase Analytics 不起作用

问题描述

我正在尝试使用expo-firebase-analyticsExpo Go 应用程序中的包作为第一步,以确保在查看它是否在独立应用程序中工作之前我的设置正确。但是,它现在无法正常工作。我的 Firebase 分析控制台上没有记录事件。我正在遵循此安装指南:https ://docs.expo.io/versions/latest/sdk/firebase-analytics/

我已经跑了expo install expo-firebase-analytics。我也跑了expo install firebase。我已经设置了一个 Firebase 网络项目并将配置添加到我的app.json.

{
  "expo": {
    ...
    "web": {
      "config": {
        "apiKey": "AIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "authDomain": "my-app.firebaseapp.com",
        "projectId": "my-app",
        "storageBucket": "my-app.appspot.com",
        "messagingSenderId": "mySenderId",
        "appId": "1:myApp:web:myAppId",
        "measurementId": "G-MYMEASUREMENTID"
      }
    },
  }

这是我的 App.js 文件

import React, { useEffect } from "react";
import { Text, View } from "react-native";
import * as Analytics from 'expo-firebase-analytics';

export default function App() {
  useEffect(() => {
    (async() => {
      console.log("App.js useEffect");
      await Analytics.logEvent('ScreenLoaded');
    })();
  }, []);

  return <View style={{ flex: 1, alignItems: "center", justifyContent: "center" }}><Text>MAIN SCREEN</Text></View>
}

谁能帮我理解我错过了什么?

标签: firebasereact-nativeexpofirebase-analytics

解决方案


我想到了。设置是正确的。我意识到,当您在 Expo Go 应用程序中使用此软件包时,您实际上并没有在 Firebase 控制台中看到日志。相反,日志显示在您的终端控制台中,以确认程序包正在运行。但是,一旦您构建了独立应用程序,日志应该会出现在您的 Firebase 控制台中。

另一个潜在的问题是在 Expo 文档中,它说使用 put your config object in expo.web.config.firebasein app.json,但我必须将它放入expo.web.config(如上面所写)并且没有关键字才能firebase工作。


推荐阅读