Know Your Users
Embrace offers two ways you can annotate sessions with information that will help developers and customer service agents find sessions for an unhappy user.
- User Personas. This is data you can set and update about the user of a session.
- Session Properties. This is data you use to track information about the device or the session itself.
For a full set of APIs related to user identification, see the
io.embrace.android.embracesdk.Embrace class in the Android API documentation.
Embrace offers a set of methods to pass information about your users.
Remember that this data will be uploaded to Embrace, so think about the privacy of your users and only include data you are willing to share. We recommend using an anonymized or hashed user ID that only your agents can search for.
The above call annotates the session with a user identifier that you can use later to search for this user. For more methods on setting user values, see the API docs.
You can also set customized values for specific use cases or segments of users.
In the above example, the session is annotated with
This will help you identify users who have a certain dollar value in their shopping cart so you can prioritize fixing bugs that affect such users.
Session Properties are another way to annotate the session. The difference between session properties and user personas is that the former are for items relating to the session or the device and not necessarily to the user. However, you are free to use both mechanisms interchangeably.
Here is an example of setting a session property:
Embrace.getInstance().addSessionProperty("launch type", "normal", permanent: false)
- Property keys have a limit of 128 characters.
- Property values have a limit of 256 characters.
- You can have up to 100 properties (as of Android SDK 5.14.2 or iOS SDK 5.16.1)
In the above, the
"launch type" property is set with a value of
This is to indicate normal launches by the user.
When the app is launched via a push notification tap, you can set the value
This can help to understand issues that are hurting push notification adoption rates.
For example, you could prioritize fixing the issues that affect customers that use push notifications, since they generally provide higher lifetime value.