I am looking for a service (i.e. Google Analytics, Fabric, Firebase) that I can use for mobile apps that allows me to track how many users choose certain options in as their preferences.
For example in the app there is a Settings screen that allows the user to choose color theme: Dark or Light. I want to know at a given time, how many of my users chose Dark and how many chose Light.
I tried sending events to Google Analytics each time the user changes his preference, but I don't think it is the correct way, because it does not overwrite the existing value, and there can be duplicates (multiple events for the same option).
In Google Analytics you can use user scope custom dimensions. In Firebase Analytics you can use user properties.
Using GA for app tracking is not necessarily future proof, since Google is pushing towards Firebase.
Related
I wish to monitor app behavior and debug application on different devices.
I am trying to select the best approach, Firebase analytics, crashlitics, Goole analytics etc...
The problem:
User report on some devices they see incorrect app behavior (Not crash). For example user reports button not working, I wish to check if the user actually clicked the button and what happened.
What I need:
I need to find that specific user (or phone) in the monitoring system mentioned above and check the logs I added (for example: firebaseAnalytics.logEvent...)
Solution questions
Can I find specific user or phone in firebaseAnalytics? What is the best approach to addressing my requirements?
You can use Firebase Analytics Event Logging & Set User Id.
With this feature, you can keep track of users' logs, later generate statistics in Firebase Analytics or Google Analytics, and track specific users if you wish.
check this links
Firebase Analytics Set User Id
Firebase Analytics Event Logging
And If you want check not you wanted situation, you can add a custom exception to firebase.
try like this code.
if(isExpectedSituation) {
// some your codes.
} else {
FirebaseCrashlytics.getInstance().recordException(YourCustomException());
}
We are using Firebase today for crash logging and some debugging. However for the production app we are looking for the best way to achieve the following scenario;
Customer calls in with a problem, it might be with one of the embedded devices the app communicates with or the app itself.
Agent logs in to a service, selects the user account (AWS Cognito) and fetch a human readable log of the latest actions and settings done on that particular users account.
Are any of the known services today made for this to happen in an easy way? Seems most is focused towards debugging, but this is more a production intent and to be able to help customers in a better way.
You can introduce Firebase Analytics to the app and then distinguish user by setting user ID: https://firebase.google.com/docs/analytics/userid
I think you'll need some work on adding the analytics logs for the actions in the app you want to track
Since I noticed a misalignment between the count of Users and the count of User IDs on Google Analytics (for mobile apps), I need to understand technically how Google counts Users in mobile apps. While I have extremely clear that on Web Users are counted based on cookies, on mobile app I still have doubts (I never developed a mobile app). I made some research and I'd like to have a confirmation from people who knows it.
I start with this assumption: the metric Users in Firebase / Google Analytics represents the count of the field user_pseudo_id (StackOverflow answer). A comment to this question seems to confirm this assumption, as well as this sentence in the official documentation to set the User ID: "Setting a user ID is never required for Analytics to work correctly. If you're only interested in finding events belonging to the same user for the same app on a single device, you can use the user_pseudo_id. This value is generated automatically by Analytics and is stored within BigQuery for each event."
user_pseudo_id should correspond to the App Instance ID (BigQuery Export Schema). If it's correct, why on the documentation the App Instance ID is referenced as an example? The field allows customizations?
The App Instance ID can change in some cases (device factory reset, app uninstall, data cleared, etc. --> Instance ID API), and that would explain the misalignment.
Since, as mentioned before, I have zero experience in mobile app development, can someone confirm this flow? Is everything correct or am I missing something?
Thanks!
Is Tracking of user Behavior like which activity user saw, what time he saw them , and all possible. Or Can this only be done from the back end ?
Does Google Analytic Premium has this feature ?
Edit:
We are looking to track the user behavior on android application and want to know the details of the pages the user has visited within the app.
The Google Analytics gives me the count of the visits however it does not confirm as to who visited which page. The user_id tracking for Google Analytics is not working for some reasons.
Is there a tool where we can record the user behavior to eventually improve the app functionality.
If you want to track individual users, you need to send a unique userId to google analytics as a custom dimension value. Make sure the Id you send to google is not PII as that is against google's privacy policy. You don't need to have a premium account to implement this behavior.
If you are not aware of how custom dimensions work, please check this link for more info on it
https://support.google.com/analytics/answer/2709828?hl=en
Also for things like at what time a particular user viewed a page, you can look at generating Custom Reports. Select Parameter Time from Dimensions Tab in Custom Reports. More info here.
https://support.google.com/analytics/answer/1151300?hl=en
I have two themes for my Android application.
I want to know how many users are using each theme.
I'm using Flurry for analytics, but can't find way to save sate about each user (Flurry is an event driven service, which isn't what I want).
It sounds like a common thing that analytics service should support.
Is there a way to do so with Flurry? or Google Analytics?
If not, what is the best tool for this kind of analytics?
You just need to generate an event with a suitable parameter for the information you want to gather. I do this global state with an event in my main activity entry point.
The data will be per that event rather than per user but so long as the users of one theme don't have distincly different usage pattent to another then the stats should be valid.