SolarEngine provides multiple methods for reporting user properties. You can use these methods to add or modify user properties.
It is recommended for you to select properties that change infrequently or hold significant value, for example, age, game level, location, first payment time and total payment amount. Other properties with higher change frequency can be reported and recorded through events.
User property settings can be set by calling userUpdate, userInit, userAdd, userUnset, userAppend, or userDelete.
Note:
If you want to upload a batch of user attributes, among which the existing user attributes will not update their values, and the non-existing attributes will be created and saved, you can call userInit to set them.
Method example:
public static void userInit(Dictionary userProperties)
Parameter Name | Parameter Meaning | Parameter Type | Mandatory |
---|---|---|---|
userProperties | Developer custom user properties | Dictionary | Yes |
Call example:
Dictionary userProperties = new Dictionary();
userProperties.Add("K1", "V1");
userProperties.Add("K2", "V2");
userProperties.Add("K3", 2);
SolarEngine.Analytics.userInit(userProperties);
For general user attributes, you can call userUpdate to set them. The attributes uploaded in this way will overwrite the original attribute values. If the user attribute does not exist before, it will be created, and the data type will follow the value passed in.
Method example:
public static void userUpdate(Dictionary userProperties)
Call example:
Dictionary userProperties = new Dictionary();
userProperties.Add("K1", "V1");
userProperties.Add("K2", "V2");
userProperties.Add("K3", 2);
SolarEngine.Analytics.userUpdate(userProperties);
If you want to report a numeric attribute and accumulate its values, you can call userAdd. If the attribute has not been set, it will be assigned a value of 0 and then calculated. You can pass in a negative value, which is equivalent to a subtraction operation.
Method example:
public static void userAdd(Dictionary userProperties)
Call example:
Dictionary userProperties = new Dictionary();
userProperties.Add("K1", 10);
userProperties.Add("K2", 100);
userProperties.Add("K3", 2);
SolarEngine.Analytics.userAdd(userProperties);
Note:
The value called by userAdd only allows Number type.userUnset
When you want to clear the user attribute values of a user, you can call userUnset to clear the specified attributes (string array). If the attribute has not been created in the array, the attribute will not be created.
Method example:
public static void userUnset(string[] keys)
Parameter Name | Parameter Meaning | Parameter Type | Mandatory |
---|---|---|---|
keys | Custom property key | String | Yes |
Call example:
SolarEngine.Analytics.userUnset(new string[]{ "K1","K2" });
You can call userAppend to append user attributes of array type. If the attribute does not exist, it will be created.
Method example:
public static void userAppend(Dictionary userProperties)
Call example:
Dictionary userProperties = new Dictionary();
userProperties.Add("K1", "V1");
userProperties.Add("K2", "V2");
userProperties.Add("K3", 2);
SolarEngine.Analytics.userAppend(userProperties);
You can call userDelete to delete users. After a user is deleted, you will no longer be able to query the user's user attributes, but the events generated by the user can still be queried.
Method example:
public static void userDelete(SEUserDeleteType deleteType)
Call example:
SolarEngine.Analytics.userDelete(SEUserDeleteType.SEUserDeleteTypeByAccountId);