v2.0~2.1 升级指南

优质
小牛编辑
120浏览
2023-12-01

表情云商店SDK2.0、2.1到3.x版本升级指南-Android

  • BQMM更名为DongtuStore
  • 其他类的BQMM前缀全部更名为DTStore
  • Text后缀更改为View

一、初始化

SDK新增了一个必须传入用户信息的初始化要求,在完成initConfig之后、使用其他功能之前,须调用setUserInfo`方法。传入哪些用户信息是可选的,唯一的要求是给每个用户传入一个唯一的userID,否则v3.x加入的收藏功能将无法正常使用。

v3.x对load()的调用变成了可选的。SDK内部会根据情况自动调用load()的逻辑。

二、消息封装

大表情消息曾经被作为Emoji对象传给回调,但如今变成了一个DTStoreSticker对象。前者的EmoCodeEmoText属性分别对应后者的codetext

三、消息展示

展示文字以及小表情与文字混合消息的接口变为DTStoreMessageView.showText()

展示大表情的接口变为DTStoreMessageView.showSticker(),传入发送消息回调收到的表情code。

在以前的版本中,展示大表情时传入的是一个JSONArray,开发者可能也将大表情消息封装为了一个JSONArray,升级到新版时需要从JSONArray中将code取出来。例如,如果消息是[["abcdefg", 1]],那么code就是abcedfg

四、消息版本兼容

对于大表情消息,新版和旧版的code有区别,v3.x能够兼容v2.x的emojiCode,v2.x无法兼容v3.x的emojiCode,所以建议开发者进行消息封装和解析时,将新版本的大表情消息封装成新的消息类型,同时逻辑上让旧版本处理到这个新的消息类型时,认为是文字消息,或者未知消息,或可提示用户升级客户端。

对于动图消息,兼容情况也是类似的,新版可以兼容旧版code,但反之不行,需要开发者做和大表情类似的处理。

五、联想弹窗

SDK原本提供了一个名为bqmmgif的包,以源码的形式提供了联想弹窗的实现。如今这一功能被集成到了SDK内部,开发者只需删去bqmmgif下的代码,并在UI初始化时调用

DongtuStore.setupSearchPopupAboveView(View anchor, DTStoreEditView input)

六、接入收藏功能

SDK从v3.x开始,加入了收藏表情和Gif的功能。每个用户拥有一个独立的收藏库,作为一个tab显示在键盘中。SDK提供了专门的UI进行收藏内容的删除和排序操作,但开发者需要调用SDK接口实现收藏内容的添加。