所有的 API 都能在 react-native-adhoc/index.js 中查到。
引入 react-native-adhoc
import AdhocSDK from 'react-native-adhoc'
-
getNumberFlag(String, Number, Function)
获取后台设置的指定的Number类型试验变量的值,试验变量的名字注意与后台保持一致,Number 为默认值参数
AdhocSDK.getNumberFlag('flag_nameXXX', 1, flagValue => { // 1 是试验变量的默认值,即从后端没有获取到变量值的情况下,这个方法应该返回什么值。 }); -
getBooleanFlag(String, boolean, Function)
获取后台设置的指定的 Boolean 类型试验变量的值,试验变量的名字注意与后台保持一致,boolean 为默认值参数
AdhocSDK.getBooleanFlag('flag_nameXXX', false, flagValue => { // false 是试验变量的默认值,即从后端没有获取到变量值的情况下,这个方法应该返回什么值。 }); -
getStringFlag(String, String, Function)
获取后台设置的指定的字符串类型试验变量的值,试验变量的名字注意与后台保持一致,String 为默认值参数
AdhocSDK.getStringFlag('flag_nameXXX', 'default_stringXXX', flagValue => { // default_stringXXX 是试验变量的默认值,即从后端没有获取到变量值的情况下,这个方法应该返回什么值。 }); -
track(String, Number)
统计需要的优化指标,用以实现科学有效的测试
AdhocSDK.track('stat_nameXXX', 1); // stat_nameXXX 是指标名称;1 是指标增加值。 -
trackWithAttribute(String, Number, Dictionary)
统计需要的优化指标(可以添加附加信息),用以实现科学有效的测试
AdhocSDK.trackWithAttribute('stat_nameXXX', 1, {name: 'Tom', age: 18}); // stat_nameXXX 是指标名称;1 是指标增加值, {name: 'Tom', age: 18} 是多维度统计需要的维度和值。 -
getCurrentExperiments(Function)
获取当前设备所在试验的试验名称和试验ID列表
AdhocSDK.getCurrentExperiments(experiments => { }); -
isJoinedExperimentByFlagName(String,Function)
返回设备是否(true或false)已经加入flagName所属试验
AdhocSDK.isJoinedExperimentByFlagName('FlagName',isJoined => { }); -
getClientId(Function)
获取当前设备所在试验的试验名列表和试验ID
AdhocSDK.getClientId(clientId => { }); -
asynchronousGetNumberFlag(String, Number, Function)
异步方式从服务器直接获取Number类型试验变量的值
AdhocSDK.asynchronousGetNumberFlag('flagName', 1, flagValue => { // 1 是试验变量的默认值 }); -
asynchronousGetStringFlag(String, String, Function)
异步方式从服务器直接获取字符串类型试验变量的值
AdhocSDK.asynchronousGetStringFlag('flagName', 'default_stringXXX', flagValue => { // default_stringXXX 是试验变量的默认值 }); -
asynchronousGetBooleanFlag(String, boolean, Function)
异步方式从服务器直接获取Bool类型试验变量的值
AdhocSDK.asynchronousGetBooleanFlag('flagName', false, flagValue => { // false 是试验变量的默认值 });
-
fastGetNumberFlag(String, Number, Function)
如果本地有缓存,则返回缓存数据,否则异步从服务端获取最新Number类型的试验数据
AdhocSDK.fastGetNumberFlag('flagName', 1, flagValue => { // 1 是试验变量的默认值 }); -
fastGetStringFlag(String, String, Function)
如果本地有缓存,则返回缓存数据,否则异步从服务端获取最新String类型的试验数据
AdhocSDK.fastGetStringFlag('flagName', 'default_stringXXX', flagValue => { // default_stringXXX 是试验变量的默认值 }); -
fastGetBooleanFlag(String, boolean, Function)
如果本地有缓存,则返回缓存数据,否则异步从服务端获取最新Boolean类型的试验数据
AdhocSDK.fastGetBooleanFlag('flagName', false, flagValue => { // false 是试验变量的默认值 });
-
addUserAttribute(String, String)
添加自定义用户标签,可以多次调用不会覆盖 注:使用此方法需要结合asyncGetFlag,否则可能会导致统计不准确。 使用方法:注意调用顺序,先调用setUserAttribute,然后调用asyncGetFlag方法 添加自定义标签也可以在初始化配置项目添加AdhocConfig.Builder.addCustom(String,String)
AdhocSDK.addUserAttribute('key', 'value')