# 升级指南
相较于之前的版本,5.x 版本升级主要加强了数据安全性,并引入了多项安全策略优化,同时伴随着一些 API 的调整。
为确保你顺利完成升级,我们列出了以下变更点和简单说明供你参考。
# 初始化
从 5.x 版本开始,SDK 初始化方法进行了如下调整:
- 初始化方法由
init
变更为initialize
; - 从参数列表中移除
appKey
,只需要domain
与appId
即可,language
仍为可选参数;
AIHelpSupport.initialize(this,
"THIS IS YOUR APP DOMAIN",
"THIS IS YOUR APP ID",
"THIS IS YOUR DEFAULT LANGUAGE(OPTIONAL)");
更多详细信息请参考 快速上手 (opens new window)。
# 事件回调
从 5.x 版本开始,移除了原有的回调监听,使用事件广播来统一处理所有回调场景。
以初始化为例,不再支持通过调用 setOnAIHelpInitializedCallback
方法来设置回调,而是通过 registerAsyncEventListener
方法来注册事件监听器:
AIHelpSupport.initialize(/** your code here */);
AIHelpSupport.registerAsyncEventListener(YOUR_EVENT, new AsyncEventListener() {
@Override
public void onAsyncEventReceived(String jsonEventData, Acknowledgment ack) {
// You can get callback here if the target event is fired
}
});
我们会在对某些事件进行广播,你可以通过订阅相关的事件来进行相应的逻辑处理。
更多详细信息请参考 事件广播 (opens new window)。
# 用户身份
从 5.x 版本开始,用户身份验证逻辑进行了调整。
- 新增了
login
API,调用该方法将 userId 以及其他用户信息传给 AIHelp; - 原有的
updateUserInfo
API 不再支持传递userId
参数,而主要用来更新用户信息;
更多详细信息请参考 用户身份 (opens new window)。
# 未读消息提醒
从 5.x 版本开始,未读消息提醒逻辑进行了调整。
- 移除了原有的未读消息轮询逻辑,新增了
fetchUnreadMessageCount
API 来即时获取未读数量; - 未读消息数量以事件的形式进行广播,开发者需要订阅相关事件来获取未读数量;
- 该 API 内部有五分钟的缓存逻辑,在五分钟内的重复调用会返回上一次的请求结果;
根据我们的经验来看,轮询的必要性并不大,我们更建议在切换页面或者场景时调用上述 API 去即时查询,以节省资源。
更多详细信息请参考 未读消息提醒 (opens new window)。
# 其他注意事项
由于本次升级涉及 API 的调整,通过引擎接入的需要替换新版本的桥接文件。
其中,Cocos2dx 引擎可以手动替换新版本的桥接文件,Unity 引擎重新导入 package 即可。
更多详细信息请参考:
← 数据安全指南