CN111107420B - 一种直播app的勋章加载方法、存储介质、电子设备及*** - Google Patents

一种直播app的勋章加载方法、存储介质、电子设备及*** Download PDF

Info

Publication number
CN111107420B
CN111107420B CN201811253140.4A CN201811253140A CN111107420B CN 111107420 B CN111107420 B CN 111107420B CN 201811253140 A CN201811253140 A CN 201811253140A CN 111107420 B CN111107420 B CN 111107420B
Authority
CN
China
Prior art keywords
medal
picture
dictionary
sub
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811253140.4A
Other languages
English (en)
Other versions
CN111107420A (zh
Inventor
汪刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201811253140.4A priority Critical patent/CN111107420B/zh
Publication of CN111107420A publication Critical patent/CN111107420A/zh
Application granted granted Critical
Publication of CN111107420B publication Critical patent/CN111107420B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了直播APP的勋章加载方法、存储介质、电子设备及***,涉及移动端应用程序领域,其方法包括直播APP启动时,从服务器获取勋章的勋章数据,并从勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将子字典和勋章ID存储在总字典中,并建立子字典与所述勋章ID的对应关系;根据勋章图片地址,从服务器下载勋章图片,并以勋章图片对应的勋章图片地址为关键字,将下载的勋章图片存储在本地文件夹中。本发明即使网络不好时,也可快速加载图片,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。

Description

一种直播APP的勋章加载方法、存储介质、电子设备及***
技术领域
本发明涉及移动端应用程序技术领域,具体涉及一种直播APP的勋章加载方法、存储介质、电子设备及***。
背景技术
随着手机移动端的快速发展,越来越多的人喜欢在手机上看直播,为了丰富用户的使用体验,在直播app中有一些勋章的图片,这些这些勋章是指给观看直播的用户的称号,比如这些用户是狂热水友,粉丝牌,首充用户,精神股东等等。目前,常用的获取勋章图片的方法是服务端推送一条消息到用户的客户端,消息中包含了勋章的地址,拿到地址后再去下载对应的勋章,此种获取勋章图片的方式有一些弊端,如每次勋章变更时,都要去下载对应的勋章图片,即当用户需要多次使用同一勋章时,每次都需要从服务端重新下载勋章图片,会耗费用户的流量,并且在收到这些勋章的图片的下载地址之后再去下载有一个延时,存在一个实时性比较差的缺点,用户收到消息过一会儿才去显示这张图片,如果网络慢这种延时会更长。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供的一种直播APP的勋章加载方法方法、存储介质、电子设备及***,能够在网络不好时,快速加载图片。
为达到以上目的,第一方面,本发明实施例提供一种直播APP的勋章加载方法,包括:
直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载。
第二方面,本发明实施例提供一种直播APP的勋章加载***,其包括:
获取模块,用于在直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
存储模块,用于将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
下载模块,用于根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
加载模块,用于获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载。
第三方面,本发明实施例还提供一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面实施例中的方法。
第四方面,本发明实施例还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面实施例中的方法。
作为一个可选的实施方案,在上述技术方案的基础上,直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本具体包括:
直播APP启动时,通过网络请求的工具类InterfaceManager,调用获取勋章的函数getRewardIconList,从服务器获取所有勋章的勋章数据;
将获取的所述勋章数据进行数据类型转换,得到数组类型的勋章数组,遍历所述勋章数组中的每一个元素,从每个元素中提取出勋章ID、勋章图片地址和勋章文本。
作为一个可选的实施方案,在上述技术方案的基础上,函数getRewardIconList的返回参数包括:int型的错误码errorcode、错误信息errorMessage和勋章数据。
作为一个可选的实施方案,在上述技术方案的基础上,将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系具体包括:
为每一个勋章ID分别创建一个子字典,将勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中;
创建一个总字典,将所述子字典和勋章ID存储在所述总字典中,建立所述子字典与所述勋章ID的对应关系,所述总字典的key值为勋章ID,value值为子字典。
作为一个可选的实施方案,在上述技术方案的基础上,根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹具体包括:
创建一个可变数组,将所述勋章图片地址存储于所述可变数组;
调用取消批量获取图片的函数cancelPrefetching;
根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片;
以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中。
作为一个可选的实施方案,在上述技术方案的基础上,根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片具体包括:
在所述可变数组中对所述勋章图片地址进行循环遍历;
在每一个循环内部调用函数loadImageWithURL,并根据遍历到的当前勋章图片地址,从所述服务器下载勋章图片。
作为一个可选的实施方案,在上述技术方案的基础上,勋章图片地址为url类型。
与现有技术相比,本发明的优点在于:
本发明先从服务器获取到勋章图片地址,然后根据勋章图片地址,将所有的勋章图片下载到本地,当用户需要使用某一勋章图片时,根据勋章ID,即可找到子字典中的勋章文本和勋章图片地址,然后根据勋章图片地址在本地取出勋章图片并加载;由于勋章图片在APP启动时,已全部下载在本地,所以当用户需要加载勋章图片时,其加载速度不会受网速的影响,即使网络不好时,也可快速加载,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面对实施例对应的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种直播APP的勋章加载方法的实施例的流程示意图一;
图2为本发明一种直播APP的勋章加载方法的实施例的流程示意图二;
图3为本发明一种直播APP的勋章加载方法的实施例的流程示意图三;
图4为本发明一种直播APP的勋章加载方法的实施例的流程示意图四;
图5为本发明一种直播APP的勋章加载方法的实施例的流程示意图五;
图6为本发明一种直播APP的勋章加载方***的实施例的结构示意框图。
具体实施方式
以下结合附图对本发明的实施例作进一步详细说明。
参见图1所示,本发明实施例提供一种直播APP的勋章加载方法、存储介质、电子设备及***,其通过先将勋章图片下载到本地,然后根据需要进行提取,使得勋章加载速度不会受网速的影响,即使网络不好时,也可快速加载,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。
为达到上述技术效果,本申请的总体思路如下:
直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载。
当用户需要加载某一勋章图片时,根据勋章ID即可在总字典中找到对应的子字典,然后根据子字典中的勋章图片地址去本地文件中获取勋章图片,并加载勋章图片和对应的勋章文本。
综上所述,本发明先从服务器获取到勋章图片地址,然后根据勋章图片地址,将所有的勋章图片下载到本地,当用户需要使用某一勋章图片时,根据勋章ID,即可找到子字典中的勋章文本和勋章图片地址,然后根据勋章图片地址在本地取出勋章图片并加载;由于勋章图片在APP启动时,已全部下载在本地,所以当用户需要加载勋章图片时,其加载速度不会受网速的影响,即使网络不好时,也可快速加载,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。
为了更好的理解上述技术方案,下面结合具体实施方式进行详细的说明。
实施例一
本发明实施例提供一种直播APP的勋章加载方法,如图1所示,其包括:
S100直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
S200将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
S300根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
S400获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载。
具体地,直播APP启动时即从服务器获取所有勋章的勋章数据,然后根据勋章数据中的勋章图片地址,将所有的勋章图片下载到本地文件夹,勋章图片存储时以勋章数据中的勋章图片地址作关键字,使得根据勋章图片地址即可获取到存储在本地文件夹中的对应的勋章图片;当用户需要加载某一勋章图片时,根据勋章ID,即可找到对应的子字典,然后根据子字典中的勋章图片地址在本地文件夹取出勋章图片,并加载勋章图片和对应的勋章文本;由于勋章图片在APP启动时,已全部下载在本地,所以当用户需要加载勋章图片时,其加载速度不会受网速的影响,即使网络不好时,也可快速加载,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。
作为一个可选的实施方式,如图2所示,在上述实施方式的基础上,步骤S100直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本具体包括:
S110直播APP启动时,通过网络请求的工具类InterfaceManager,调用获取勋章的函数getRewardIconList,从服务器获取所有勋章的勋章数据;函数getRewardIconList的返回参数包括:int型的错误码errorcode、错误信息errorMessage和勋章数据;
S120将获取的所述勋章数据进行数据类型转换,得到为数组类型的勋章数组,遍历所述勋章数组中的每一个元素,从每个元素中提取出勋章ID、勋章图片地址和勋章文本。
具体地,本实施例以IOS***为例进行说明。直播APP启动时,调用APP启动的入口函数didFinishLaunchingWithOptions,在入口函数内部调用loadMedalImages函数,在loadMedalImages函数内部使用网络请求的工具类InterfaceManager(InterfaceManager是一个Service,在被创建时通过ServiceManager注册自己,他作为Telephony对外的接口,可以接受其他进程向Telephony的请求,我们通过该Service所继承的AIDL文件就能看到他所提供的具体功能),然后调用获取勋章的函数getRewardIconList,这个函数无需参数,当这个网络函数发送成功之后,其就会返回三个参数,分别为int型的错误码errorcode、错误信息errorMessage和勋章数据,错误码是指错误代码,如0、1等,错误信息是指具体什么地方出现错误,如网络错误、服务器错误等,通过返回错误参数,可方便知道错误地方,以便进行修正和维护。其中,didFinishLaunchingWithOptions函数为IOS***中,该函数能够创建快捷访问方式,用户根据创建的多种快捷启动的函数进行选择,从而进入快捷启动。loadMedalImages函数则用于加载勋章的图片。而getRewardIconList函数则用于获取勋章对应的列表。获取到返回的参数后,判断错误码errorcode是否为零,为零则代表网络请求出现错误,未成功获取到勋章数据;若不为零,则说明数据获取请求成功。本实施例通过一个网络接口getRewardIconList从服务器获取未来可能用到的所有的勋章数据,当服务器上新增了勋章时,都可以通过这个接口返回,方便更新本地存储的勋章图片。
获取到勋章数据后,由于从服务器获取的勋章数据类型不是数组类型,因此,需要将从服务器获取的勋章数据转换为数组类型,转换后的勋章数组为medalArray,其中,勋章数据与勋章数组中包含的数据内容是一样的只是数据的类型不一样。得到medalArray后,对medalArray里面的元素进行遍历,对于遍历的每一个元素是一个字典unitDic,从每个字典unitDic中取出勋章ID、勋章图片地址和勋章文本,勋章文本是指勋章的名称。通过此步骤可将从服务器获取的数据进行过滤和分类,以得到所需的数据。
作为一个可选的实施方式,如图3所示,在上述实施方式的基础上,步骤S200将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系具体包括:
S210为每一个勋章ID分别创建一个子字典,将勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中;
S220创建一个总字典,将所述子字典和勋章ID存储在所述总字典中,建立所述子字典与所述勋章ID的对应关系,所述总字典的key值为勋章ID,value值为子字典。
具体地,从每一个unitDic中取出勋章ID、勋章图片地址和勋章文本后,为每一个勋章ID建立一个子字典medalDict,并将该勋章ID对应的勋章图片地址和勋章文本存储在子字典medalDict中,重复该步骤,可以得到多个子字典,且子字典medalDict与勋章ID一一对应。
然后再创建一个总字典medalIconDict,将得到的多个子字典和勋章ID存储在总字典中,并建立勋章ID与子字典的对应关系,这样勋章ID和勋章图片地址、勋章文本则建立了关联。该总字典的key值为勋章ID、value值为子字典medalDict,当用户需要使用某一勋章图片时,可直接根据该勋章的勋章ID,得到勋章图片地址和勋章文本,然后根据勋章图片地址得到存储在本地文件夹的对应的图片,从而获取到完整的勋章。
作为一个可选的实施方式,如图4所示,在上述实施方式的基础上,步骤S300根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹具体包括:
S310创建一个可变数组,将所述勋章图片地址存储于所述可变数组;
S320调用取消批量获取图片的函数cancelPrefetching;
S330根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片;
S340以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中。
具体地,为了实现在网络不好的情况下,仍可快速的加载勋章图片,需要先将勋章图片下载到本地,其下载操作具体为:先创建一个可变数组,然后将所有的勋章图片地址存储于可变数组中,此处将勋章图片地址存储于可变数组中,可方便进行勋章图片的下载。
将勋章图片地址存储于可变数组中后,为了避免重复批量的获取勋章图片,需要调用取消批量获取图片的函数cancelPrefetching,然后根据可变数组中的勋章图片地址,从服务器下载勋章图片,然后将下载的勋章图片以勋章图片地址为key保存在本地文件夹中,其中cance l Prefetch i ng函数用于取消批量获取图片。当用户需要使用某一勋章时,可根据该勋章的勋章ID从总字典中获取到对应的子字典,然后获取子字典中的勋章图片地址和勋章文本,再根据获取到勋章图片地址从本地文件夹中获取到勋章图片。本方法在直播APP启动时,即从服务器获取所有的勋章图片并保持在本地,后面需要用到勋章图片的时候就可以通过勋章图片地址去获取勋章图片,这样使得图片的加载很迅速,无延时,即使网络不好也可以下载很快,并且每个勋章图片只需要从服务器下载一次,可以节约流量。
作为一个可选的实施方式,如图5所示,在上述实施方式的基础上,步骤S330根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片具体包括:
S331在所述可变数组中对所述勋章图片地址进行循环遍历;
S332在每一个循环内部调用函数loadImageWithURL,并根据遍历到的当前勋章图片地址,从所述服务器下载勋章图片。
具体地,将勋章图片地址存储在可变数组中后,对可变数组中的勋章图片地址进行循环遍历,在每一个循环内部会使用下载管理器调用函数loadImageWithURL,从服务器下载勋章图片,这样会将数组中的所有元素(勋章图片地址)都下载到本地,且每个勋章图片地址对应的勋章图片只下载一次,其中loadImageWithUrl函数用于根据Url获取在服务器的地址,从而加载图片。
作为一个可选的实施方式,在上述实施方式的基础上,上述勋章图片地址为url类型。
基于同一发明构思,本申请提供实施例二,其具体实施方式如下。
实施例二
一种直播APP的勋章加载***,如图6所示包括:
获取模块10,用于在直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
存储模块20,用于将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;勋章图片地址为url类型;
下载模块30,用于根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
加载模块40,用于获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载。
优选地,获取模块10包括:
获取单元,用于直播APP启动时,通过网络请求的工具类InterfaceManager,调用获取勋章的函数getRewardIconList,从服务器获取所有勋章的勋章数据;函数getRewardIconList的返回参数包括:int型的错误码errorcode、错误信息errorMessage和勋章数据。
提起单元,用于将获取的所述勋章数据进行数据类型转化,得到数组类型的勋章数组,遍历所述勋章数组中的每一个元素,从每个元素中提取出勋章ID、勋章图片地址和勋章文本。
优选地,存储模块20包括:
字典创建单元,用于为每一个勋章ID分别创建一个子字典;还用于创建一个总字典;
存储单元,用于将勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中;还用于将所述子字典和勋章ID存储在所述总字典中,建立所述子字典与所述勋章ID的对应关系,所述总字典的key值为勋章ID,value值为子字典。
优选地,下载模块30包括:
数组创建单元,用于创建一个可变数组;
调用单元,用于调用取消批量获取图片的函数cancelPrefetching;
下载单元,用于根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片;
图片存储单元,用于以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中。
优选地,下载单元,还用于在所述可变数组中对所述勋章图片地址进行循环遍历;并在每一个循环内部调用函数loadImageWithURL,并根据遍历到的当前勋章图片地址,从所述服务器下载勋章图片。
前述方法实施例中的各种变化方式和具体实例同样适用于本实施例的***,通过前述方法的详细描述,本领域技术人员可以清楚的知道本实施例中***的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本申请提供实施例三。
实施例三
本发明第三实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一实施例中的所有方法步骤或部分方法步骤。
本发明实现上述第一实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
基于同一发明构思,本申请提供实施例四。
实施例四
本发明第四实施例还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一实施例中的所有方法步骤或部分方法步骤。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、视频数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
总体来说,本发明实施例提供的一种直播APP的勋章加载方法、存储介质、电子设备及***,在APP启动时,勋章图片已全部下载在本地,所以当用户需要加载勋章图片时,其加载速度不会受网速的影响,即使网络不好时,也可快速加载,且无无延时;同时下载到本地的图片可重复使用,不需要每次加载时都从服务器上下载,节约了用户的流量。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (9)

1.一种直播APP的勋章加载方法,其特征在于,包括:
直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
根据所述勋章图片地址,从所述服务器下载所有勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载;所述将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系具体包括:
为每一个勋章ID分别创建一个子字典,将勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,得到多个子字典,且子字典与勋章ID一一对应;
创建一个总字典,将所述子字典和勋章ID存储在所述总字典中,建立所述子字典与所述勋章ID的对应关系,所述总字典的key值为勋章ID,value值为子字典。
2.如权利要求1所述的直播APP的勋章加载方法,其特征在于:所述直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本具体包括:
直播APP启动时,通过网络请求的工具类InterfaceManager,调用获取勋章的函数getRewardIconList,从服务器获取所有勋章的勋章数据;
将获取的所述勋章数据进行数据类型转换,得到数组类型的勋章数组,遍历所述勋章数组中的每一个元素,从每个元素中提取出勋章ID、勋章图片地址和勋章文本。
3.如权利要求2所述的直播APP的勋章加载方法,其特征在于:所述函数getRewardIconList的返回参数包括:int型的错误码errorcode、错误信息errorMessage和勋章数据。
4.如权利要求1所述的直播APP的勋章加载方法,其特征在于:所述根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹具体包括:
创建一个可变数组,将所述勋章图片地址存储于所述可变数组;
调用取消批量获取图片的函数cancelPrefetching;
根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片;
以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中。
5.如权利要求4所述的直播APP的勋章加载方法,其特征在于:所述根据所述可变数组中的勋章图片地址,从所述服务器下载勋章图片具体包括:
在所述可变数组中对所述勋章图片地址进行循环遍历;
在每一个循环内部调用函数loadImageWithURL,并根据遍历到的当前勋章图片地址,从所述服务器下载勋章图片。
6.如权利要求1所述的直播APP的勋章加载方法,其特征在于:所述勋章图片地址为url类型。
7.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至6任一项所述的方法。
8.一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现权利要求1至6任一项所述的方法。
9.一种直播APP的勋章加载***,其特征在于:包括:
获取模块,用于在直播APP启动时,从服务器获取所有勋章的勋章数据,并从所述勋章数据中提取出勋章的勋章ID、勋章图片地址和勋章文本;
存储模块,用于将每一个勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,将所述子字典和所述勋章ID存储在总字典中,并建立所述子字典与所述勋章ID的对应关系;
下载模块,用于根据所述勋章图片地址,从所述服务器下载勋章图片,并以所述勋章图片对应的勋章图片地址为关键字,将下载的所述勋章图片存储在本地文件夹中;
加载模块,用于获取需要加载的勋章图片对应的勋章ID,根据获取的所述勋章ID,在所述总字典中查找到对应的子字典,并根据对应的子字典中的勋章图片地址,在所述本地文件夹中提取出对应的勋章图片并加载;
所述存储模块还用于:
为每一个勋章ID分别创建一个子字典,将勋章ID对应的勋章图片地址和勋章文本存储在对应的子字典中,得到多个子字典,且子字典与勋章ID一一对应;
创建一个总字典,将所述子字典和勋章ID存储在所述总字典中,建立所述子字典与所述勋章ID的对应关系,所述总字典的key值为勋章ID,value值为子字典。
CN201811253140.4A 2018-10-25 2018-10-25 一种直播app的勋章加载方法、存储介质、电子设备及*** Active CN111107420B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811253140.4A CN111107420B (zh) 2018-10-25 2018-10-25 一种直播app的勋章加载方法、存储介质、电子设备及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811253140.4A CN111107420B (zh) 2018-10-25 2018-10-25 一种直播app的勋章加载方法、存储介质、电子设备及***

Publications (2)

Publication Number Publication Date
CN111107420A CN111107420A (zh) 2020-05-05
CN111107420B true CN111107420B (zh) 2022-08-16

Family

ID=70418313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811253140.4A Active CN111107420B (zh) 2018-10-25 2018-10-25 一种直播app的勋章加载方法、存储介质、电子设备及***

Country Status (1)

Country Link
CN (1) CN111107420B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810188A (zh) * 2012-11-08 2014-05-21 腾讯科技(深圳)有限公司 一种微博用户行为评估方法和装置
CN108073698A (zh) * 2017-12-11 2018-05-25 武汉斗鱼网络科技有限公司 实时动画显示方法、装置、电子终端及可读存储介质
CN108256006A (zh) * 2018-01-02 2018-07-06 武汉斗鱼网络科技有限公司 一种直播间徽章图片加载方法及***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6643807B2 (ja) * 2015-03-09 2020-02-12 キヤノン株式会社 文書管理クライアント装置、文書管理方法
CN105528404A (zh) * 2015-12-03 2016-04-27 北京锐安科技有限公司 种子关键字字典建立方法和装置及关键词提取方法和装置
CN108280099A (zh) * 2017-01-11 2018-07-13 广州市动景计算机科技有限公司 数据字典管理方法、装置及服务器
CN108038018B (zh) * 2017-12-22 2020-09-29 闪捷信息科技有限公司 可扩展的日志数据存储方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810188A (zh) * 2012-11-08 2014-05-21 腾讯科技(深圳)有限公司 一种微博用户行为评估方法和装置
CN108073698A (zh) * 2017-12-11 2018-05-25 武汉斗鱼网络科技有限公司 实时动画显示方法、装置、电子终端及可读存储介质
CN108256006A (zh) * 2018-01-02 2018-07-06 武汉斗鱼网络科技有限公司 一种直播间徽章图片加载方法及***

Also Published As

Publication number Publication date
CN111107420A (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
CN108256006B (zh) 一种直播间徽章图片加载方法及***
CN105188048A (zh) 一种移动终端加载定制应用的方法、装置及终端设备
CN109618176B (zh) 一种直播业务的处理方法、设备和存储介质
CN110825448A (zh) 实现多业务模块相互调用的方法、装置、电子设备和存储介质
CN111324378B (zh) 一种面向视频监控应用软件的配置方法、装置及设备
US20170163787A1 (en) Method and electronic device for upgrading or downgrading system
CN110947178A (zh) 游戏切换方法、电子设备及存储介质
CN110543324A (zh) 一种应用程序的插件增量更新方法及装置
CN110750286A (zh) OTA升级Mbn的管理方法、装置、***、设备和介质
CN113490192A (zh) 蓝牙连接方法、装置、终端设备及可读存储介质
CN109842524B (zh) 自动升级方法、装置、电子设备及计算机可读存储介质
CN111107420B (zh) 一种直播app的勋章加载方法、存储介质、电子设备及***
CN113050985B (zh) 前端工程依赖自动注册方法及装置
CN111698281B (zh) 一种资源下载方法、装置、电子设备及存储介质
CN111752454A (zh) 应用程序界面的皮肤控制方法、装置、终端及介质
CN109343880B (zh) 一种rn包更新方法、装置及可读存储介质
US11070659B2 (en) Incoming voice calling method and terminal
CN108668160B (zh) 节奏弹幕展示方法、装置及电子设备
CN113485855B (zh) 一种内存共享方法、装置、电子设备及可读存储介质
CN113515447B (zh) ***自动化测试方法及装置
CN112596748B (zh) 一种桌面融合使用方法、装置、设备及可读存储介质
US11050621B2 (en) Client, server and differential upgrade method
CN112114864A (zh) cocoapods代码拉取优化方法及***
CN107659830B (zh) 一种互动活动的接入方法、***及终端设备
CN111061401A (zh) 一种直播app内容访问方法、存储介质、电子设备及***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant