问题
I am trying to wrap my head around the Firebase User Engagement Calculation. I am doing a lot of debugview testing now, and as the online documentation states (https://support.google.com/firebase/answer/6317485), Firebase is firing the user_engagement event by default on a periodic basis within a session while the app is in the foreground.
What I have seen thusfar is that user_engagement is fired quite reliably in the beginning and end of an engagement (this can be occurring multiple times in a specific session).
Scenario: Say for instance I started my session and exited the app, but returned again within the the same 30 minutes time slot. The session_start won't fire again, but only user_engagement. This is quite clever, because I can actually then query first and last engagement experienced within this scenario.
My question is: How would I actually then query the difference between the beginning of a user_engagement and end of the user engagement ? Currently engagement_time_msec allows me to measure: The additional engagement time (ms) since the last user_engagement event (https://support.google.com/firebase/answer/7061705?hl=en), and not since the beginning of the user_engagement. What if I wanted to measure engagement from the first engagement and last engagement, assuming my specific scenario describe earlier. The idea of this question is to ask how would an example query look like to address this question.
回答1:
Since I posted this question, I found it would be a lot wiser to look at Session Duration and not Duration between User Engagement Events.
As far as I know, one can not update settings of the user_engagement event, but one can however determine when a session should start (after 0, 5, 10, 15, etc seconds) and b) when a session should end (after 10, 30, 60, etc minutes of inactivity).
To help you get started here is great examples:
- How to calculate Session and Session duration in Firebase Analytics raw data?
- Session Calculations
- Session-Duration Distribution-table in Firebase
- Sessions-per-User Distribution-table in Firebase
Important: a Firebase session starts by default after at least 10s since a user_engagement event was triggered (and a session ends after a period of at least 30 minutes of no triggers of user_engagement). And so, whenever users use your app for a period of less than 10s, you will accrue user engagement without a session. This typically means that you will have higher active user base in your dashboard, than users which started a session under your Firebase Events'-tab.
来源:https://stackoverflow.com/questions/42646612/firebase-user-engagement-calculation