Setting Custom Data for Android

Discussed here is how to set user attributes and tags, as well as log user events, and their relevant APIs for your Android app.

User Attributes

You can assign custom attributes to your users and they will show up on your Instabug dashboard with each report. These attributes can later be used to filter reports in your dashboard.

2888

This is where additional user attributes appear in your bug reports.

To add a new user attribute use the following method.

Instabug.setUserAttribute("Age", "18")
Instabug.setUserAttribute("LoggedIn", "True")
Instabug.setUserAttribute("Age", "18");
Instabug.setUserAttribute("LoggedIn", "True");

You can also remove the current value of a certain user attribute, or remove all user attributes.

//remove a user attribute
Instabug.removeUserAttribute("KEY")

//remove all user attributes 
Instabug.clearAllUserAttributes()
//remove a user attribute
Instabug.removeUserAttribute("KEY");

//remove all user attributes 
Instabug.clearAllUserAttributes();

Or retrieve all user attributes.

val userAttrs = Instabug.getAllUserAttributes()
//Get map of user attributes
HashMap<String, String> userAttrs = Instabug.getAllUserAttributes();

User Events

You can log custom user events throughout your application. Custom events are automatically included with each report.

Instabug.logUserEvent("EVENT");
Instabug.logUserEvent("EVENT");

Tags

You can add custom tags to your bug and crash reports. These tags can later be used to filter reports or set custom rules from your dashboard.

2888

This is where tags appear in your bug reports.

The example below demonstrates how to add tags to a report.

Instabug.addTags("Tag one", "Tag two", "Tag three");
Instabug.addTags("Tag one", "Tag two", "Tag three");

📘

Adding tags before sending reports

Sometimes it's useful to be able to add a tag to a bug report before it's been sent. In these cases, the perfect solution would be use the event handlers of the bug reporting class. You can find more details here.

You can also get all the currently set tags as follows.

Instabug.getTags()
Instabug.getTags();

Last, you can reset all the tags.

Instabug.resetTags()
Instabug.resetTags();

Managing Tags

If you'd like to remove a particular tag from your dashboard to prevent it from appearing again when entering a new tag manually, you can do so by navigating to the tags page under the settings options and remove the tag. You can also edit and rename the tag.

Experiments

📘

Included in Crash Reporting and APM

This feature is currently available for the following metrics:

  • Crash Occurrences.
  • UI Hangs.
  • Cold App launches.
  • Screen Loading.

In certain scenarios, you might find that you're rolling out different experiments to different users, where your user base would see different features depending on what's enabled for them. In scenarios such as these, you'll want to keep track of the enabled experiments for each user and even filter by them.

This is possible using the 'experiments' methods provided by the SDK. You can have up to 200 experiments, with no duplicates. Each experiment can consist of 70 characters at most and is not removed at the end of the session or if logOut is called.

Add Experiment

You can use the below method to add experiments to the next report:

Instabug.addExperiments(List<String> experiments)
Instabug.addExperiments(List<String> experiments);

Remove Experiment

You can use the below method to remove certain experiments from the next report:

Instabug.removeExperiments(List<String> experiments);
Instabug.removeExperiments(List<String> experiments);

Clear Experiment

You can use the below method to clear experiments from the next report:

Instabug.clearAllExperiments();
Instabug.clearAllExperiments();

What’s Next

You now have more information than ever about each bug and crash report, so we suggest you read up more on bug reporting. Also, did you know that you can use custom user attributes and events to target surveys?