弹幕消息传输方法、装置、设备及存储介质制造方法及图纸

技术编号:19438405 阅读:9 留言:0更新日期:2018-11-14 13:42
本发明专利技术实施例公开了一种弹幕消息传输方法、装置、设备及存储介质。该方法包括:弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息;弹幕服务器依据目标弹幕消息,通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数,将目标弹幕消息发送至Android客户端,其中,消息传输函数为Android客户端中目标Java弹幕监听器对象中的回调函数,目标Java弹幕监听器对象预先注册至Java弹幕库对象。通过上述技术方案,使得弹幕服务器在获得目标弹幕消息时主动将其推送给Android客户端,进而使得Android客户端以被动方式,更加及时地接收目标弹幕消息,提高了Android客户端获取弹幕消息的实时性。

【技术实现步骤摘要】
弹幕消息传输方法、装置、设备及存储介质
本专利技术实施例涉及计算机技术,尤其涉及一种弹幕消息传输方法、装置、设备及存储介质。
技术介绍
在搭载Android系统的客户端(可简称为Android客户端)中,对于需要接收弹幕消息的应用软件而言,其获取弹幕消息的方式,通常是通过网络远程访问弹幕服务器。目前,Android客户端网络远程访问弹幕服务器以获取弹幕消息的实现方式为:Android客户端以调用基于Java语言编写的弹幕消息获取函数的方式,周期性地发起弹幕消息获取的网络请求。弹幕服务器接收到上述网络请求之后,触发上述弹幕消息获取函数指向的弹幕服务器中基于C++语言编写的相应代码段的执行,以获取与网络请求对应的基于C++语言的C++弹幕消息对象,并将该C++弹幕消息对象以函数返回值的形式发送至Android客户端。Android客户端接收到C++弹幕消息对象后,再将其转换为基于Java语言的Java弹幕消息对象。上述现有技术中Android客户端获取弹幕消息的方式为主动地、周期性地调用函数的形式,这种弹幕消息获取方式存在两个问题:第一,Android客户端频繁执行函数调用以及弹幕消息对象转换操作,造成较高的系统资源占用率,使得系统内存开销大;第二,发起函数调用的周期定时器时长设置不恰当,容易造成相邻两次函数调用之间弹幕消息的丢失。
技术实现思路
本专利技术实施例提供一种弹幕消息传输方法、装置、设备及存储介质,以使Android客户端更加及时地从弹幕服务器获取弹幕消息,极大地减少弹幕消息的丢失率,并在一定程度上降低系统内存开销。第一方面,本专利技术实施例提供了一种弹幕消息传输方法,包括:弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息;所述弹幕服务器依据所述目标弹幕消息,通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数,将所述目标弹幕消息发送至所述Android客户端,其中,所述消息传输函数为所述Android客户端中目标Java弹幕监听器对象中的回调函数,所述目标Java弹幕监听器对象预先注册至所述Java弹幕库对象。可选地,所述弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息包括:所述弹幕服务器对所述待处理弹幕消息进行解密及消息解析,获得包含弹幕消息标识和弹幕消息体的所述目标弹幕消息。可选地,在所述通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数之前,该方法还包括:所述Android客户端基于所述弹幕服务器中的C++弹幕库类,构造Java弹幕库对象;所述Android客户端基于所述弹幕服务器中的C++监听器类,构建所述目标Java弹幕监听器对象,所述目标Java弹幕监听器对象中包含所述消息传输函数;所述Android客户端依据所述目标Java弹幕监听器对象,调用所述Java弹幕库对象中的监听器设置函数,将所述目标Java弹幕监听器对象注册至所述Java弹幕库对象中;相应地,调用消息传输函数包括:基于所述弹幕服务器中与所述Java弹幕库对象对应的C++弹幕库对象调用所述消息传输函数。其中,所述Android客户端基于所述弹幕服务器中的C++弹幕库类,构造Java弹幕库对象包括:所述Android客户端调用应用程序类的上下文环境获取函数,获取Android系统的上下文环境对象;所述Android客户端依据所述上下文环境对象,调用所述C++弹幕库类的构造函数,构造所述Java弹幕库对象。其中,所述Android客户端基于所述弹幕服务器中的C++监听器类,构建所述目标Java弹幕监听器对象包括:所述Android客户端基于所述C++监听器类获取第一初始Java弹幕监听器对象;所述Android客户端基于所述弹幕服务器中的C++弹幕监听器接口,对所述第一初始Java弹幕监听器对象赋值,以构建所述目标Java弹幕监听器对象,其中,所述C++弹幕监听器接口包含预定义的所述消息传输函数。进一步地,所述Android客户端基于所述C++监听器类获取第一初始Java弹幕监听器对象包括:所述Android客户端基于所述C++监听器类,定义第二初始Java弹幕监听器对象;所述Android客户端将所述第二初始Java弹幕监听器对象初始化为空对象,获得所述第一初始Java弹幕监听器对象。进一步地,所述Android客户端基于所述弹幕服务器中的C++弹幕监听器接口,对所述第一初始Java弹幕监听器对象赋值,以构建所述目标Java弹幕监听器对象包括:所述Android客户端通过接口继承关键字,继承所述C++弹幕监听器接口,并对所述预定义的所述消息传输函数进行回调,获得Java弹幕监听器接口;所述Android客户端基于所述Java弹幕监听器接口,对所述第一初始Java弹幕监听器对象赋值,以构建所述目标Java弹幕监听器对象。第二方面,本专利技术实施例还提供了一种弹幕消息传输装置,该装置包括:目标弹幕消息获取模块,用于弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息;目标弹幕消息发送模块,用于弹幕服务器依据所述目标弹幕消息,通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数,将所述目标弹幕消息发送至所述Android客户端,其中,所述消息传输函数为所述Android客户端中目标Java弹幕监听器对象中的回调函数,所述目标Java弹幕监听器对象预先注册至所述Java弹幕库对象。可选地,目标弹幕消息获取模块具体用于:所述弹幕服务器对所述待处理弹幕消息进行解密及消息解析,获得包含弹幕消息标识和弹幕消息体的所述目标弹幕消息。可选地,在上述装置的基础上,该装置还包括监听设置模块,该监听设置模块包括:Java弹幕库对象构建子模块,用于在所述弹幕服务器通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数之前,所述Android客户端基于所述弹幕服务器中的C++弹幕库类,构造Java弹幕库对象;目标Java弹幕监听器对象构建子模块,用于所述Android客户端基于所述弹幕服务器中的C++监听器类,构建所述目标Java弹幕监听器对象,所述目标Java弹幕监听器对象中包含所述消息传输函数;监听器注册子模块,用于所述Android客户端依据所述目标Java弹幕监听器对象,调用所述Java弹幕库对象中的监听器设置函数,将所述目标Java弹幕监听器对象注册至所述Java弹幕库对象中。相应地,目标弹幕消息发送模块具体用于:基于所述弹幕服务器中与所述Java弹幕库对象对应的C++弹幕库对象调用所述消息传输函数。其中,Java弹幕库对象构建子模块具体用于:所述Android客户端调用应用程序类的上下文环境获取函数,获取Android系统的上下文环境对象;所述Android客户端依据所述上下文环境对象,调用所述C++弹幕库类的构造函数,构造所述Java弹幕库对象。其中,目标Java弹幕监听器对象构建子模块具体用于:所述Android客户端基于所述C++监听器类获取第一初始Java弹幕监听器对象;所述Android客户端基于所述弹幕服务器中的C++弹幕监听器接口,对所述第一初始Ja本文档来自技高网...

【技术保护点】
1.一种弹幕消息传输方法,其特征在于,包括:弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息;所述弹幕服务器依据所述目标弹幕消息,通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数,将所述目标弹幕消息发送至所述Android客户端;其中,所述消息传输函数为所述Android客户端中目标Java弹幕监听器对象中的回调函数,所述目标Java弹幕监听器对象预先注册至所述Java弹幕库对象。

【技术特征摘要】
1.一种弹幕消息传输方法,其特征在于,包括:弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息;所述弹幕服务器依据所述目标弹幕消息,通过与Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数,将所述目标弹幕消息发送至所述Android客户端;其中,所述消息传输函数为所述Android客户端中目标Java弹幕监听器对象中的回调函数,所述目标Java弹幕监听器对象预先注册至所述Java弹幕库对象。2.根据权利要求1所述的方法,其特征在于,所述弹幕服务器对待处理弹幕消息进行预处理,获得目标弹幕消息包括:所述弹幕服务器对所述待处理弹幕消息进行解密及消息解析,获得包含弹幕消息标识和弹幕消息体的所述目标弹幕消息。3.根据权利要求1所述的方法,其特征在于,在所述通过与所述Android客户端中预先构建的Java弹幕库对象对应的C++弹幕库对象调用消息传输函数之前,还包括:所述Android客户端基于所述弹幕服务器中的C++弹幕库类,构造所述Java弹幕库对象;所述Android客户端基于所述弹幕服务器中的C++监听器类,构建所述目标Java弹幕监听器对象,所述目标Java弹幕监听器对象中包含所述消息传输函数;所述Android客户端依据所述目标Java弹幕监听器对象,调用所述Java弹幕库对象中的监听器设置函数,将所述目标Java弹幕监听器对象注册至所述Java弹幕库对象中。4.根据权利要求3所述的方法,其特征在于,所述Android客户端基于所述弹幕服务器中的C++弹幕库类,构造所述Java弹幕库对象包括:所述Android客户端调用应用程序类的上下文环境获取函数,获取Android系统的上下文环境对象;所述Android客户端依据所述上下文环境对象,调用所述C++弹幕库类的构造函数,构造所述Java弹幕库对象。5.根据权利要求3所述的方法,其特征在于,所述Android客户端基于所述弹幕服务器中的C++监听器类,构建所述目标Java弹幕监听器对象包括:所述Android客户端基于所述C++监听器类获取第一初始Java弹幕监听器对象;所述Android客户端基于...

【专利技术属性】
技术研发人员:张磊陈少杰张文明
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1