创建用户上下文

云眼About 2 min

创建用户上下文

本主题介绍创建用户上下文方法,该方法为云眼灰度发布(特性标帜)AB实验中的标帜决策和事件创建用户上下文。

创建一个用户可以为其做出标帜决策和跟踪事件。用户上下文作为运行时对象返回,否则不会保留该对象。此方法的目的是设置一次用户上下文,因此不必在每次做出标帜决策或跟踪事件时都指定用户。可以定义多个用户上下文。

版本

SDK v3.7 及更高版本

描述

此调用为标帜决策和事件创建用户上下文。可以在 Eyeofcloud 客户端实例上成功调用此方法,即使该实例尚未完全配置也是如此。

参数

下表列出了必需参数和可选参数:

参数类型描述
(必选)用户 ID字符串用户的 ID。
属性 可选Map自定义键值字符串对的映射,用于指定用于受众群体定位的用户属性。有关更多详细信息,请参阅以下部分。

受众群体属性

==================================

可以为用户设置自定义受众群体属性,然后可以使用这些属性来定位受众群体。可以将字符串、数字、布尔值和 nil 作为自定义用户属性值传递。如果要根据访问群体使用的应用程序变体来定位访问群体,还可以传入格式为语义变体的open in new window字符串,然后在 Eyeofcloud 应用中定义访问version群体条件。

🚧 重要

请注意,在访问群体评估期间,如果没有为给定的受众群体条件传递有效的属性值(例如,如果在受众群体条件需要布尔值时传递字符串,或者您只是忘记传递值),则会跳过该条件。发生这种情况时,SDK 日志将包含警告。

返回

返回一个 EyeofcloudUserContext 对象。有关详细信息,请参阅云眼用户上下文

Kotlin

// option 1: create a user, then set attributes  

var user: EyeofcloudUserContext? 
user = eyeofcloudClient.createUserContext("user123") 
user.setAttribute("is_logged_in", false) 
user.setAttribute("app_version", "1.3.2")  

// option 2: pass attributes when creating the user  

val attributes: MutableMap<String, Any> = HashMap() 
attributes["is_logged_in"] = false 
attributes["app_version"] = "1.3.2" 
user = eyeofcloudClient.createUserContext("user123", attributes)

Java

// option 1: create a user, then set attributes

EyeofcloudUserContext user;
user = eyeofcloudClient.createUserContext("user123"); 
user.setAttribute("is_logged_in", false); 
user.setAttribute("app_version", "1.3.2");  

// option 2: pass attributes when creating the user  

Map<String, Object> attributes = new HashMap<>(); 
attributes.put("is_logged_in", false); 
attributes.put("app_version", "1.3.2"); 
user = eyeofcloudClient.createUserContext("user123", attributes);
Last update:
Contributors: zhangweixue,“zhangweixue”