【问题标题】:Integrating Amplitude Analytics to React Native App with Expo将 Amplitude Analytics 集成到 React Native App 与 Expo
【发布时间】:2019-11-06 18:44:18
【问题描述】:

我正在尝试将 Amplitude 集成到我的 React Native 项目中。我目前仍在开发应用程序并使用 Expo。我试图捕获的第一个事件是用户登录时。

const events = {
  USER_LOGGED_IN: 'USER_LOGGED_IN',
  USER_CREATED_ACCOUNT: 'USER_CREATED_ACCOUNT',
};
let isInitialized = false;
const apiKey = 'xxxxxxxxxxxxxxxxxxxxxxxx';
const initialize = () => {
  if (!Environment.isProduction || !apiKey) {
    return;
  }

  Amplitude.initialize(apiKey);
  isInitialized = true;
};

在我的渲染函数中(返回上方)我有这行代码:

render() {
    Expo.Amplitude.logEvent('USER_LOGGED_IN')
return (

我没有看到任何事件进入幅度。使用 expo 运行我的代码时是否可以看到事件?

注意 - 此代码在我的主屏幕组件中

【问题讨论】:

  • 我建议你把这个逻辑写成componentDidMount
  • 不幸的是,@EdgarAroutiounian 仍然没有看到任何东西。您之前是否将振幅集成到项目中?
  • 不在我自己的个人应用程序中,但示例源代码在这里:github.com/expo/expo/blob/master/js/Api/Analytics.js

标签: react-native analytics expo amplitude


【解决方案1】:

您需要publish your Expo app 才能查看 Amplitude 上的事件,因为集成仅适用于 prod env。应用发布后,您会在 Amplitude 仪表板上看到事件,但会有少许延迟,通常为 1 分钟。

【讨论】:

    【解决方案2】:

    这就是我为振幅工作所做的工作

    expo install expo-analytics-amplitude
    

    Analytics.js

    import * as Amplitude from 'expo-analytics-amplitude'
    
    let isInitialized = false
    const apiKey = 'YOUR_KEY_HERE'
    
    export const events = {
        HOME: 'HOME'
    }
    
    export function initialize() {
        if (isInitialized || !apiKey) {
            return
        }
    
        Amplitude.initialize(apiKey)
        isInitialized = true
    }
    
    export function track(event, options) {
        initialize()
    
        if (options) {
            Amplitude.logEventWithProperties(event, options)
        } else {
            Amplitude.logEvent(event)
        }
    }
    
    export default {
        events,
        initialize,
        track
    }
    

    在需要跟踪的文件中导入

    import Analytics from '../auth/Analytics'
    
    ...
    
    useEffect(() => {
      Analytics.track(Analytics.events.HOME)
    }, [])
    

    【讨论】:

      猜你喜欢
      • 2022-08-19
      • 2021-09-18
      • 2020-10-16
      • 2020-01-26
      • 1970-01-01
      • 2021-02-22
      • 2022-12-21
      • 2020-02-24
      • 1970-01-01
      相关资源
      最近更新 更多