UXCam captures the Screen (view controller/activity) name automatically. However, there are some cases where you will need to manually tag your screens to ensure you have them separately in your recordings and heatmaps.
Use our API to tag screens if you:
- Use OpenGL or have a game where the screens are dynamically shown.
- Have one or more fragments inside an Android activity, and you need to tag fragment name instead of an activity.
- Use Flutter, React Native or Cordova, where the application usually runs within a single activity or controller.
- Want to define which views or activities should be considered screens or want to define different names.
Note: Cross-platform frameworks often have inconsistent view controller/activity naming; it is recommended to manually tag your screens if you're using such frameworks.
Tag Screen Name
⚠️ Read this before you complete the implementation
» When using our API to manually tag your screens you should handle all these points:
1. Disable automatic screen name tagging at start by setting Automatic Screen Name Tagging as FALSE to avoid any collision with auto-tag functionality. See how to do it here.
2. Tag each and every screen manually to prevent multiple screens from being tagged with the same name.
eg. Screen A -> Screen B
.
If Screen A is tagged but Screen B is not, when a user navigates from screen A to Screen B, Screen B will be tagged as Screen A
.
3. Tag the screen again when the user returns to it
. eg. Screen B-> Screen A
Let's say Screen A and Screen B are tagged manually at the start of the respective screen. Therefore, when a user navigates from Screen A to Screen B, Screen A will be tagged as Screen A and Screen B will be tagged as screen B.
However, if the user redirects back to Screen A from Screen B, Screen A will not be tagged, since Screen A was not started but just resumed. That means that in that case Screen A will still be tagged as Screen B.
If such cases are possible according to your app architecture you need to make sure you've considered each of them and also tagged your Screens (or Fragments) when they are resumed.
✏️ Please note that it will always depend on your app structure, the types of components used, and the possible navigation path within the app. Therefore, we recommend always review your implementation to confirm all the screens are tagged when they are shown and resumed.
UXCam.tagScreenName(_ screenName: String)
UXCam.tagScreenName(String screenName);
void UXCam.TagScreenName(string screenName)
RNUxcam.tagScreenName: (screenName: string) => void
UXCam.tagScreenName: (screenName: string) => void
void tagScreenName(String screenName)
The API parameters are:
screenName: A String with name of the screen as required.
Control Automatic Tagging
To Enable or Disable the automatic screen tagging you should use:
UXCam.setAutomaticScreenNameTagging(_ enable: Bool)
UXCam.setAutomaticScreenNameTagging(boolean enable);
void UXCam.SetAutomaticScreenNameTagging(bool enable)
RNUxcam.setAutomaticScreenNameTagging: (enable: boolean) => void
UXCam.setAutomaticScreenNameTagging: (enable: boolean) => void
void setAutomaticScreenNameTagging(bool enable)
The API parameters are:
enable: Set to TRUE to enable automatic screen name tagging (the default) or FALSE to disable it.