CN106131612A - The method and system of Android app dynamic load resource function module - Google Patents
The method and system of Android app dynamic load resource function module Download PDFInfo
- Publication number
- CN106131612A CN106131612A CN201610506610.8A CN201610506610A CN106131612A CN 106131612 A CN106131612 A CN 106131612A CN 201610506610 A CN201610506610 A CN 201610506610A CN 106131612 A CN106131612 A CN 106131612A
- Authority
- CN
- China
- Prior art keywords
- resource function
- module
- subelement
- function module
- download
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26291—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种安卓app动态加载资源功能模块的方法及系统,包括模块生成过程,包括在服务器端生成单独的资源功能模块;动态验证更新过程,在客户端检验资源功能模块的安全性和更新资源功能模块,联网判断模块的安全性及更新状况取版本最高的文件;加载过程,用于在客户端下载及加载资源功能模块,包括校验hash,根据扫描文件夹中所有该资源功能模块的版本号进行排序,删除较老版本的文件,直到剩下n个资源功能模块的文件,下载完成后开始进行加载并提示用户。本发明所提供安卓app动态加载功能模块的用途包括不限于直播间动态加载,具有重要的市场价值。
The present invention provides a method and system for dynamically loading resource function modules in an Android app, including a module generation process, including generating a separate resource function module on the server side; a dynamic verification update process, and checking the security and update of the resource function module on the client side For the resource function module, the file with the highest version is used to determine the security and update status of the module on the network; the loading process is used to download and load the resource function module on the client, including verifying the hash, according to all the resource function modules in the scanned folder The version numbers are sorted, and the files of older versions are deleted until the files of n resource function modules are left. After the download is completed, the loading starts and the user is prompted. The application of the Android app dynamic loading function module provided by the present invention includes not limited to the dynamic loading in the live broadcast room, and has important market value.
Description
技术领域technical field
本发明涉及视频应用技术领域,尤其是涉及一种安卓应用动态加载资源功能模块的方法及系统。The present invention relates to the technical field of video applications, in particular to a method and system for dynamically loading resource function modules by Android applications.
背景技术Background technique
当前,视频直播方式已经得到了广泛的应用。人们可以通过互联网随时随地在平板电脑、手机等多种客户端,通过安装的应用来观看视频直播。Currently, live video broadcasting has been widely used. People can use the Internet to watch live video anytime, anywhere on a variety of clients such as tablet computers and mobile phones, through installed applications.
对于视频直播行业来说,直播间改版和直播间需求增加以前播放性能优化是常有的事情,但是通过现有的技术每开发一个新功能都将会触发升级来让用户去体验这些新功能,导致新功能覆盖时间久,版本碎片化严重。For the video live broadcast industry, it is common to optimize playback performance before live room revisions and live room demand increase, but every new function developed through existing technologies will trigger an upgrade to allow users to experience these new functions. As a result, the coverage of new functions takes a long time, and the version fragmentation is serious.
这个时候,动态加载技术就显得非常重要,在将用户体验提升到最好的情况下,也能不断的更新应用本身的功能及资源。At this time, dynamic loading technology is very important. In the case of improving the user experience to the best, it can also continuously update the functions and resources of the application itself.
相关术语及解释如下:The relevant terms and explanations are as follows:
App Android系统需要安装的应用,Application的缩写App Android system needs to install the application, the abbreviation of Application
url 统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。url Uniform resource locator is a concise representation of the location and access method of resources that can be obtained from the Internet, and is the address of standard resources on the Internet.
assert Android应用包自带的资源文件包assert The resource file package that comes with the Android application package
versioncode Android应用的版本号,每次新版本该版本号会随之增加versioncode The version number of the Android application, which will increase with each new version
文件hash 确定文件唯一性的一串字符,用以确定该文件的唯一性File hash A string of characters to determine the uniqueness of the file, used to determine the uniqueness of the file
plugin 安卓app动态加载功能模块的总称plugin Android app dynamic loading function module general term
md5 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。md5 Message Digest Algorithm MD5 (Chinese name is the fifth edition of Message Digest Algorithm) is a hash function widely used in the field of computer security to provide message integrity protection.
Api API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力Api API (Application Programming Interface, application programming interface) is some predefined functions, the purpose is to provide applications and developers with the ability to access a set of routines based on certain software or hardware
发明内容Contents of the invention
针对现有技术的以上缺陷,本发明提供了一种安卓app动态加载资源功能模块的方法及系统。Aiming at the above defects of the prior art, the present invention provides a method and system for dynamically loading resource function modules in an Android app.
本发明的技术方案包括一种安卓app动态加载资源功能模块的方法,包括模块生成过程、动态验证更新过程和加载过程,The technical solution of the present invention includes a method for dynamically loading resource function modules in an Android app, including a module generation process, a dynamic verification update process and a loading process,
所述模块生成过程,包括在服务器端生成单独的资源功能模块;The module generation process includes generating a separate resource function module on the server side;
所述动态验证更新过程,用于在客户端检验资源功能模块的安全性和更新资源功能模块,The dynamic verification update process is used to verify the security of the resource function module and update the resource function module on the client side,
所述加载过程,用于在客户端下载及加载资源功能模块。The loading process is used to download and load resource function modules on the client side.
而且,所述动态验证更新过程包括以下步骤,Moreover, the dynamic verification update process includes the following steps,
步骤A1,当用户打开资源功能模块,首先用包名判断是否加载,如果已加载,进入步骤A9,否则进入步骤A2;Step A1, when the user opens the resource function module, first use the package name to judge whether it is loaded, if it has been loaded, go to step A9, otherwise go to step A2;
步骤A2,扫描plugin目录下该包名的文件是否存在,存在则进入步骤A3,否则进入步骤A5;Step A2, scan whether the file with the package name in the plugin directory exists, if it exists, go to step A3, otherwise go to step A5;
步骤A3,判断有几个文件,大于1则取最新的版本进入步骤A4,否则直接进入步骤A4;Step A3, determine how many files there are, if it is greater than 1, take the latest version and enter step A4, otherwise directly enter step A4;
步骤A4,进行加载,加载成功则进入步骤A9,加载失败则进入步骤A5;Step A4, carry out loading, if the loading is successful, go to step A9, and if the loading fails, go to step A5;
步骤A5,在assert目录下寻找是否存在该文件,存在则进入步骤A6,不存在则进入步骤A7;Step A5, find whether the file exists in the assert directory, if it exists, go to step A6, if it does not exist, go to step A7;
步骤A6,从assert目录复制到plugin目录,然后进入步骤A4;Step A6, copy from the assert directory to the plugin directory, and then go to step A4;
步骤A7,请求api,加上包名,进入步骤A8;Step A7, request api, add the package name, and enter step A8;
步骤A8,下载该插件,进入步骤A4;Step A8, download the plug-in, and go to step A4;
步骤A9,联网判断安全性及更新;Step A9, judging security and updating through networking;
步骤A10,判断返回数据,若插件不安全或有更新返回步骤A8,若插件安全且没有更新,打开插件;Step A10, judging the returned data, if the plug-in is not safe or updated, return to step A8, if the plug-in is safe and not updated, open the plug-in;
所述加载过程包括以下步骤,The loading process includes the following steps,
步骤B1,传入包名、versioncode和渠道号生成md5字符串,并传入url下载地址,文件hash;Step B1, pass in package name, versioncode and channel number to generate md5 string, and pass in url download address and file hash;
步骤B2,在plugin目录中新建名称为temp的文件夹,并根据url下载地址下载该资源功能模块,下载完成则进入步骤B3,下载失败则任务终止;Step B2, create a folder named temp in the plugin directory, and download the resource function module according to the url download address. After the download is completed, enter step B3. If the download fails, the task is terminated;
步骤B3,校验hash,并移动到plugin文件夹中;如果校验成功则进入步骤B4,否则任务终止;Step B3, verify the hash, and move it to the plugin folder; if the verification is successful, enter step B4, otherwise the task is terminated;
步骤B4,扫描plugin目录下该包名的文件是否大于预设的本地缓存模块数量n,是则进入步骤B5,否则进入步骤B6;Step B4, scan whether the file with the package name in the plugin directory is greater than the preset number n of local cache modules, if yes, go to step B5, otherwise go to step B6;
步骤B5,根据扫描文件夹中所有该资源功能模块的版本号,并进行排序,删除较老版本的文件,直到剩下n个资源功能模块的文件,进入步骤B6;Step B5, according to the version numbers of all the resource function modules in the scanned folder, and sort them, delete files of older versions until there are n files of resource function modules left, and enter step B6;
步骤B6,进行加载并提示用户,实现下载回调。Step B6, carry out loading and prompt the user to realize download callback.
而且,当安卓app作为主程序来打开资源功能模块时,主程序和服务器进行交互,主程序上传模块信息,服务器根据模块信息判断并返回标识,主程序根据标识确定后续处理逻辑。Moreover, when the Android app is used as the main program to open the resource function module, the main program interacts with the server, the main program uploads the module information, the server judges and returns the identification according to the module information, and the main program determines the follow-up processing logic according to the identification.
而且,服务器判断并返回标识的方式如下,Moreover, the way the server judges and returns the ID is as follows,
服务器根据主程序上传的模块信息与服务器本地最新的模块信息进行对比,首先,如果md5与服务的md5匹配,则直接返回标识1,如果不匹配,则开始进行其他的数据匹配如下,The server compares the module information uploaded by the main program with the latest local module information on the server. First, if the md5 matches the md5 of the service, it will directly return the identifier 1. If it does not match, start other data matching as follows,
如果包名不对,则返回标识-2,If the package name is incorrect, return ID -2,
如果签名或校验码不对,则返回标识-1,并将正确的模块地址一并下发给主程序;如果版本不对,则需要更新,获取服务器后台设定的参数,确定该更新是2“建议更新”、3“强制更新”或4“静默更新”,然后再下发信息到手机的主程序;If the signature or verification code is wrong, return the ID -1, and send the correct module address to the main program; if the version is wrong, it needs to be updated, obtain the parameters set by the server background, and determine that the update is 2" Suggest update", 3 "forced update" or 4 "silent update", and then send the information to the main program of the mobile phone;
最后判断客户端版本,与服务器存储的该模块所需要的客户端版本是否一致,如果不一致则下发标识5到手机的主程序,提示用户需要更新客户端才能打开该资源功能模块。Finally, judge whether the client version is consistent with the client version required by the module stored in the server, and if not, then send the identification 5 to the main program of the mobile phone, prompting the user to update the client to open the resource function module.
而且,主程序根据标识确定后续处理逻辑的实现方式如下,Moreover, the main program determines the implementation of the follow-up processing logic according to the identification as follows,
如果返回是-1,则调用下载过程进行下载;If the return is -1, call the download process to download;
如果返回是1,则是调用动态验证更新过程打开;If the return is 1, the dynamic verification update process is called to open;
如果返回是2,则是给予用户提示,由用户选择打开还是下载;If the return is 2, it will give the user a prompt, and the user can choose to open or download;
如果返回3,则是让用户等待,先调用下载过程进行下载,安装后再调用动态验证更新过程打开;If it returns 3, the user is asked to wait, first call the download process to download, and then call the dynamic verification update process to open after installation;
如果是返回4,则直接调用动态验证更新过程打开,并且在后台调用下载过程进行下载,用户感知不到下载;If it returns 4, directly call the dynamic verification update process to open, and call the download process in the background to download, and the user cannot perceive the download;
如果是返回5,则提示用户需要跟新客户端app;If 5 is returned, the user is prompted to update the client app;
如果是返回-2或者请求失败,则终止启动资源功能模块,并给用户提示。If -2 is returned or the request fails, the resource function module will be terminated and a prompt will be given to the user.
本发明还相应提供一种安卓app动态加载资源功能模块的系统,包括在服务器端设置的模块生成单元,在客户端设置的动态验证更新单元和加载单元,The present invention also correspondingly provides a system for dynamically loading resource function modules of an Android app, including a module generation unit set on the server side, a dynamic verification update unit and a loading unit set on the client side,
所述直播间模块生成单元,用于在服务器端生成单独的资源功能模块;The live room module generation unit is used to generate a separate resource function module on the server side;
所述动态验证更新单元,用于在客户端检验资源功能模块的安全性和更新资源功能模块,The dynamic verification and updating unit is used to verify the security of the resource function module and update the resource function module on the client side,
所述加载单元,用于在客户端下载及加载资源功能模块。The loading unit is used for downloading and loading resource function modules on the client side.
而且,所述动态验证更新单元包括以下子单元,Moreover, the dynamic verification update unit includes the following subunits,
子单元A1,用于当用户打开资源功能模块,首先用包名判断是否加载,如果已加载,命令子单元A9工作,否则命令子单元A2工作;Subunit A1 is used to determine whether to load the resource function module by the package name first when the user opens it. If it has been loaded, order subunit A9 to work, otherwise order subunit A2 to work;
子单元A2,用于扫描plugin目录下该包名的文件是否存在,存在则命令子单元A3工作,否则命令子单元A5工作;Subunit A2 is used to scan whether the file with the package name in the plugin directory exists, and if it exists, order subunit A3 to work, otherwise order subunit A5 to work;
子单元A3,用于判断有几个文件,大于1则取最新的版本命令子单元A4工作,否则直接命令子单元A4工作;Subunit A3 is used to judge how many files there are. If it is greater than 1, the latest version will be used to order subunit A4 to work, otherwise directly order subunit A4 to work;
子单元A4,用于进行加载,加载成功则命令子单元A9工作,加载失败则命令子单元A5工作;Subunit A4 is used for loading. If the loading is successful, the subunit A9 is ordered to work, and if the loading fails, the subunit A5 is ordered to work;
子单元A5,用于在assert目录下寻找是否存在该文件,存在则命令子单元A6工作,不存在则命令子单元A7工作;Subunit A5 is used to find whether the file exists in the assert directory, if it exists, order subunit A6 to work, and if it does not exist, order subunit A7 to work;
子单元A6,用于从assert目录复制到plugin目录,然后命令子单元A4工作;Subunit A6 is used to copy from the assert directory to the plugin directory, and then order subunit A4 to work;
子单元A7,用于请求api,加上包名,命令子单元A8工作;Subunit A7 is used to request api, add the package name, and order subunit A8 to work;
子单元A8,用于下载该插件,命令子单元A4工作;Subunit A8 is used to download the plug-in and order subunit A4 to work;
子单元A9,用于联网判断安全性及更新;Sub-unit A9 is used to judge security and update through networking;
子单元A10,用于判断返回数据,若插件不安全或有更新返回子单元A8,若插件安全且没有更新,打开插件;Subunit A10 is used to judge the returned data. If the plug-in is not safe or updated, return to sub-unit A8. If the plug-in is safe and not updated, open the plug-in;
所述加载单元包括以下子单元,The loading unit includes the following subunits,
子单元B1,用于传入包名、versioncode和渠道号生成md5字符串,并传入url下载地址,文件hash;Subunit B1 is used to pass in package name, versioncode and channel number to generate md5 string, and pass in url download address and file hash;
子单元B2,用于在plugin目录中新建名称为temp的文件夹,并根据url下载地址下载该资源功能模块,下载完成则命令子单元B3工作,下载失败则任务终止;Subunit B2 is used to create a new folder named temp in the plugin directory, and download the resource function module according to the url download address. After the download is completed, the subunit B3 is ordered to work. If the download fails, the task is terminated;
子单元B3,用于校验hash,并移动到plugin文件夹中;如果校验成功则命令子单元B4工作,否则任务终止;Subunit B3 is used to verify the hash and move it to the plugin folder; if the verification is successful, order subunit B4 to work, otherwise the task is terminated;
子单元B4,用于扫描plugin目录下该包名的文件是否大于预设的本地缓存模块数量n,是则命令子单元B5工作,否则命令子单元B6工作;Subunit B4 is used to scan whether the file of the package name in the plugin directory is greater than the preset number n of local cache modules, and if so, order subunit B5 to work, otherwise order subunit B6 to work;
子单元B5,用于根据扫描文件夹中所有该资源功能模块的版本号,并进行排序,删除较老版本的文件,直到剩下n个资源功能模块的文件,命令子单元B6工作;The subunit B5 is used to scan and sort the version numbers of all the resource function modules in the folder, delete files of older versions, and order the subunit B6 to work until the files of n resource function modules remain;
子单元B6,用于进行加载并提示用户,实现下载回调。The subunit B6 is used for loading and prompting the user to implement download callback.
而且,当安卓app作为主程序来打开资源功能模块时,主程序和服务器进行交互,主程序上传模块信息,服务器根据模块信息判断并返回标识,主程序根据标识确定后续处理逻辑。Moreover, when the Android app is used as the main program to open the resource function module, the main program interacts with the server, the main program uploads the module information, the server judges and returns the identification according to the module information, and the main program determines the follow-up processing logic according to the identification.
而且,服务器判断并返回标识的方式如下,Moreover, the way the server judges and returns the ID is as follows,
服务器根据主程序上传的模块信息与服务器本地最新的模块信息进行对比,首先,如果md5与服务的md5匹配,则直接返回标识1,如果不匹配,则开始进行其他的数据匹配如下,The server compares the module information uploaded by the main program with the latest local module information on the server. First, if the md5 matches the md5 of the service, it will directly return the identifier 1. If it does not match, start other data matching as follows,
如果包名不对,则返回标识-2,If the package name is incorrect, return ID -2,
如果签名或校验码不对,则返回标识-1,并将正确的模块地址一并下发给主程序;如果版本不对,则需要更新,获取服务器后台设定的参数,确定该更新是2“建议更新”、3“强制更新”或4“静默更新”,然后再下发信息到手机的主程序;If the signature or verification code is wrong, return the ID -1, and send the correct module address to the main program; if the version is wrong, it needs to be updated, obtain the parameters set by the server background, and determine that the update is 2" Suggest update", 3 "forced update" or 4 "silent update", and then send the information to the main program of the mobile phone;
最后判断客户端版本,与服务器存储的该模块所需要的客户端版本是否一致,如果不一致则下发标识5到手机的主程序,提示用户需要更新客户端才能打开该资源功能模块。Finally, judge whether the client version is consistent with the client version required by the module stored in the server, and if not, then send the identification 5 to the main program of the mobile phone, prompting the user to update the client to open the resource function module.
而且,主程序根据标识确定后续处理逻辑的实现方式如下,Moreover, the main program determines the implementation of the follow-up processing logic according to the identification as follows,
如果返回是-1,则调用下载过程进行下载;If the return is -1, call the download process to download;
如果返回是1,则是调用动态验证更新过程打开;If the return is 1, the dynamic verification update process is called to open;
如果返回是2,则是给予用户提示,由用户选择打开还是下载;If the return is 2, it will give the user a prompt, and the user can choose to open or download;
如果返回3,则是让用户等待,先调用下载过程进行下载,安装后再调用动态验证更新过程打开;If it returns 3, the user is asked to wait, first call the download process to download, and then call the dynamic verification update process to open after installation;
如果是返回4,则直接调用动态验证更新过程打开,并且在后台调用下载过程进行下载,用户感知不到下载;If it returns 4, directly call the dynamic verification update process to open, and call the download process in the background to download, and the user cannot perceive the download;
如果是返回5,则提示用户需要跟新客户端app;If 5 is returned, the user is prompted to update the client app;
如果是返回-2或者请求失败,则终止启动资源功能模块,并给用户提示。If -2 is returned or the request fails, the resource function module is terminated and a prompt is given to the user.
本发明将资源文件及新的功能打包成一个资源功能模块文件放置在服务器,当用户通过客户端请求服务器时,服务器会将这个模块文件的信息返回给客户端。用户如果需要打开这个新的功能时,客户端会调用下载来下载这个模块文件,然后在本地验证安全性并打开。本发明所提供安卓app动态加载功能模块的用途包括不限于直播间动态加载,具有重要的市场价值。The present invention packs resource files and new functions into a resource function module file and places it on the server. When the user requests the server through the client, the server will return the information of the module file to the client. If the user needs to open this new function, the client will call the download to download the module file, and then verify the security locally and open it. The application of the Android app dynamic loading function module provided by the present invention includes not limited to the dynamic loading in the live broadcast room, and has important market value.
附图说明Description of drawings
图1为本发明实施例的与服务器交互的流程图。FIG. 1 is a flowchart of interaction with a server according to an embodiment of the present invention.
图2为本发明实施例的模块安全验证及动态更新流程图。Fig. 2 is a flowchart of module security verification and dynamic update according to the embodiment of the present invention.
图3为本发明实施例的流程图。Fig. 3 is a flowchart of an embodiment of the present invention.
具体实施方式detailed description
下面通过实施例并结合附图,对本发明的技术方案作进一步具体的说明。The technical solutions of the present invention will be further specifically described below through the embodiments and in conjunction with the accompanying drawings.
为了能更好的说明本发明的技术方案,实施例以直播间动态加载为例来说明,但本发明技术方案包括而不限于直播间动态加载,聊天、社区、扩展功能、广告、主题、游戏、工具等资源功能模块同样能够适用。In order to better illustrate the technical solution of the present invention, the embodiment takes the dynamic loading of the live room as an example to illustrate, but the technical solution of the present invention includes but not limited to the dynamic loading of the live room, chat, community, extended functions, advertisements, themes, games , tools and other resource function modules are also applicable.
1.可以独立维护的功能模块1. Functional modules that can be maintained independently
实施例的模块生成过程,包括在服务器端生成单独的资源功能模块。在开发中,将直播间单独做成模块,当用户需要使用直播间时,客户端会向服务器请求下载该直播间模块。下载成功后,客户端将对该模块进行安全验证。验证通过后,将会向模块中传入房间号,及用户信息来打开该直播间。其他的请求服务,弹幕服务等都是由该模块来完成的。这样直播间的整体功能及资源就可以单独维护,可以大大缩小主App的安装包的大小。The module generation process of the embodiment includes generating a separate resource function module at the server side. During development, the live broadcast room is made into a separate module. When the user needs to use the live broadcast room, the client will request the server to download the live broadcast room module. After the download is successful, the client will perform security verification on the module. After the verification is passed, the room number and user information will be passed to the module to open the live room. Other request services, barrage services, etc. are all completed by this module. In this way, the overall functions and resources of the live broadcast room can be maintained separately, which can greatly reduce the size of the installation package of the main app.
这样的好处除了可以单独维护和缩小主App的安装包大小外,还有一点就是独立模块的运行对主App是没有任何影响的。如果模块因为某些原因出问题了,不会让主App崩溃。并且这个时候会启动模块的自动修复功能,让模块继续正确运行。The advantage of this is that apart from maintaining and reducing the size of the main App's installation package separately, another point is that the operation of independent modules has no impact on the main App. If the module fails for some reason, it will not crash the main app. And at this time, the automatic repair function of the module will be activated to allow the module to continue to run correctly.
2.安卓app动态加载资源功能模块安全验证及动态更新2. Android app dynamically loads resource function module security verification and dynamic update
在App的不断发展中,总会迎来App中功能的更新,这样的更新在给用户带来新功能体验的同时也会带来不太好的体验(用户需要不断的升级)。如果有一种技术能让用户的App功能自动升级,这就解决了该用户体验不太好的问题。为了解决这个问题,动态更新应运而生。In the continuous development of the App, there will always be an update of the functions in the App. Such an update will not only bring new functional experience to users, but also bring a bad experience (users need to constantly upgrade). If there is a technology that can automatically upgrade the user's App functions, this will solve the problem of poor user experience. In order to solve this problem, dynamic update came into being.
在用户打开模块的时候,程序将模块的包名及其他信息传入进行判断。首先通过该包名判断程序中是否已经加载了该模块。如果加载了该模块,则联网判断该模块的安全性及更新状况。如果没有加载该模块,则去模块目录中扫描是否有文件的包名与之符合,如果有符合的话,取版本最高的。如果没有符合的,则去assert目录中寻找是否有符合的,有就加载,如果还是没有,则带上该包名去请求api,返回该模块最新的下载信息,去下载,下载完毕后则重复进行加载的过程。When the user opens the module, the program passes in the package name and other information of the module for judgment. First, judge whether the module has been loaded in the program through the package name. If the module is loaded, the security and update status of the module are judged online. If the module is not loaded, go to the module directory to scan whether the package name of the file matches it. If there is a match, take the highest version. If there is no match, go to the assert directory to find if there is a match, and load it if there is one. If there is still no match, then bring the package name to request the api, return the latest download information of the module, and download it. After the download is complete, repeat The process of loading.
实施例的动态验证更新过程,用于在客户端检验资源功能模块的安全性和更新资源功能模块,具体流程参见图2所示:The dynamic verification update process of the embodiment is used to check the security of the resource function module and update the resource function module on the client side. The specific process is shown in FIG. 2:
步骤1,当用户打开模块,首先用包名判断是否加载,如果已加载,进入步骤9,否则进入步骤2;Step 1, when the user opens the module, first use the package name to determine whether it is loaded, if it is loaded, go to step 9, otherwise go to step 2;
步骤2,扫描plugin目录下该包名的文件是否存在,存在则进入步骤3,否则进入步骤5;Step 2, scan whether the file with the package name in the plugin directory exists, if it exists, go to step 3, otherwise go to step 5;
步骤3,判断有几个文件,大于1则取最新的版本进入步骤4,否则直接进入步骤4;Step 3, determine how many files there are, if it is greater than 1, take the latest version and go to step 4, otherwise go directly to step 4;
步骤4,进行加载,加载成功则进入步骤9,加载失败则进入步骤5;Step 4, carry out loading, if the loading is successful, go to step 9, if the loading fails, go to step 5;
步骤5,在assert目录下寻找是否存在该文件,存在则进入步骤6,不存在则进入步骤7;Step 5, find whether the file exists in the assert directory, if it exists, go to step 6, if it does not exist, go to step 7;
步骤6,从assert目录复制到plugin目录,然后进入步骤4;Step 6, copy from the assert directory to the plugin directory, and then go to step 4;
步骤7,请求api,加上该包名,进入步骤8;Step 7, request api, add the package name, and go to step 8;
步骤8,下载该插件,进入步骤4;Step 8, download the plug-in, go to step 4;
步骤9,联网判断安全性及更新;Step 9, network to determine security and update;
步骤10,判断返回数据,若插件不安全或有更新返回步骤8,若插件安全且没有更新,打开插件。Step 10, judge the returned data, if the plug-in is not safe or there is an update, return to step 8, if the plug-in is safe and not updated, open the plug-in.
3.加载模块3. Load the module
直播间模块在第一次使用或更新的时候是需要下载的,为了统一用户下载该模块的版本及正确性,需要约定下载逻辑。The live room module needs to be downloaded when it is used or updated for the first time. In order to unify the version and correctness of the module downloaded by users, it is necessary to agree on the download logic.
在需要下载之前,开发者需要传入url下载地址,文件hash,md5(由包名,versioncode,渠道号生成)这三个参数,并在plugin目录中新建名称为temp的文件夹(如果存在则可省略不新建)。接着开始执行下载,将下载的文件名命名为md5,下载完毕后,检测该文件的hash是否与传入的hash一致,如果一致的话则将文件移动到模块目录中,并检测目录中是否有大于n个该包名的文件,如果有,则删除最老的版本。执行完操作后通过下载回调返回。Before the download is required, the developer needs to pass in the three parameters of url download address, file hash, md5 (generated from package name, versioncode, channel number), and create a new folder named temp in the plugin directory (if it exists, then Can be omitted without creating a new one). Then start to download, and name the downloaded file as md5. After the download is complete, check whether the hash of the file is consistent with the incoming hash. n files with the package name, if there are, delete the oldest version. Returns via the download callback after performing the operation.
实施例的加载过程,用于在客户端下载及加载资源功能模块,具体逻辑如图3所示:The loading process of the embodiment is used to download and load resource function modules on the client side, and the specific logic is as shown in Figure 3:
步骤1,传入包名、versioncode和渠道号生成md5字符串,并传入url下载地址,文件hash;Step 1, pass in the package name, versioncode and channel number to generate an md5 string, and pass in the url download address and file hash;
步骤2,在plugin目录中新建名称为temp的文件夹,并根据url下载地址,下载该模块,下载完成则进入步骤3,下载失败则任务终止;Step 2, create a new folder named temp in the plugin directory, and download the module according to the url download address. After the download is completed, enter step 3. If the download fails, the task is terminated;
步骤3,校验hash,并移动到plugin文件夹中;如果校验成功则进入步骤4,否则任务终止;Step 3, verify the hash and move it to the plugin folder; if the verification is successful, go to step 4, otherwise the task is terminated;
步骤4,扫描plugin目录下该包名的文件是否大于n(n为本地缓存的该模块数量,具体实施时可以根据不同的需求来进行调整,由本领域技术人员预先设定),是则进入步骤5,否则小于等于n,进入步骤6;Step 4, scan whether the file of the package name in the plugin directory is greater than n (n is the number of modules in the local cache, which can be adjusted according to different needs during specific implementation, and is preset by those skilled in the art), and if so, enter the step 5, otherwise less than or equal to n, go to step 6;
步骤5,根据扫描文件夹中所有该模块的版本号,并进行排序,删除较老版本的模块文件,直到剩下n个模块的文件,为了防止用户升级后的版本出现致命错误,可以回退做备份,进入步骤6;Step 5, according to the version numbers of all the modules in the scanned folder, and sort them, delete the module files of older versions until there are n module files left. In order to prevent fatal errors in the upgraded version of the user, you can roll back Make a backup, go to step 6;
步骤6,本次下载完成,开始进行加载并提示用户,实现下载回调。Step 6, the download is complete, start loading and prompt the user to realize the download callback.
任务终止是,可以用户提示下载失败,请稍后再试。When the task is terminated, the user may be prompted that the download failed, please try again later.
4.打开模块前的交互4. Interaction before opening the module
在手机上的安卓app作为主程序来打开直播间模块,这个主程序和服务器进行交互。为了解决恶意用户篡改和模块升级这个模块,本发明进一步提出,在打开模块之前加上图1的判断,这部分是需要跟服务器交互的,将模块的各种信息上传到服务器进行验证,验证通过后返回信息给手机进行相应的操作,如果是返回-2,或者请求失败则终止启动模块,并给用户提示。The Android app on the mobile phone is used as the main program to open the live room module, and the main program interacts with the server. In order to solve malicious user tampering and module upgrade, this invention further proposes to add the judgment in Figure 1 before opening the module. This part needs to interact with the server, upload various information of the module to the server for verification, and pass the verification Then return information to the mobile phone to perform corresponding operations. If it returns -2, or the request fails, the startup module will be terminated and a prompt will be given to the user.
参见图2,网络验证开始,手机主程序上传模块网络信息,包括包名、签名、校验码、版本、渠道、文件hash、客户端版本,然后服务器判断并返回标识,手机客户端主程序根据标识确定后续处理逻辑:See Figure 2, the network verification starts, the main program of the mobile phone uploads the network information of the module, including the package name, signature, verification code, version, channel, file hash, and client version, and then the server judges and returns the identification, and the main program of the mobile phone client according to The identification determines the subsequent processing logic:
如果返回是-1,则调用图3所示流程下载。If the return is -1, call the process shown in Figure 3 to download.
如果返回是1,则是调用图2所示流程打开。If the return is 1, the process shown in Figure 2 is called to open.
如果返回是2,则是给予用户提示,由用户选择打开还是下载。If the return is 2, it will give the user a prompt, and the user can choose to open or download.
如果返回3,则是让用户等待,先调用图3所示流程下载,安装后再调用图2所示流程打开。If 3 is returned, the user is asked to wait, first call the process shown in Figure 3 to download, and then call the process shown in Figure 2 to open after installation.
如果是返回4,则直接调用图2所示流程打开,并且在后台调用图3所示流程下载,用户感知不到下载。If it returns 4, directly call the process shown in Figure 2 to open, and call the process shown in Figure 3 to download in the background, and the user cannot perceive the download.
如果是返回5,则提示用户需要跟新客户端app。If 5 is returned, the user is prompted to update the client app.
如果是返回-2或者请求失败,则终止启动模块,并给用户提示。If it returns -2 or the request fails, the startup module will be terminated and a prompt will be given to the user.
服务器判断并返回标识的具体方式可以为:The specific way for the server to judge and return the identifier can be as follows:
服务器根据手机传过来的模块信息与服务器本地最新的模块信息进行对比,首先,如果md5与服务的md5匹配,则直接返回标识1,如果不匹配,则开始进行其他的数据匹配:The server compares the module information transmitted by the mobile phone with the latest local module information of the server. First, if the md5 matches the md5 of the service, it will directly return the identifier 1. If it does not match, it will start other data matching:
如果包名不对,则返回标识-2,If the package name is incorrect, return ID -2,
如果签名或校验码不对,则返回标识-1,并将正确的模块地址一并下发给手机的主程序;If the signature or check code is incorrect, return the flag -1, and send the correct module address to the main program of the mobile phone;
如果版本不对,则需要更新,获取服务器后台设定的参数,来确定该更新是2“建议更新”、3“强制更新”或4“静默更新”,然后再下发信息到手机的主程序;If the version is wrong, it needs to be updated. Obtain the parameters set in the background of the server to determine whether the update is 2 "recommended update", 3 "forced update" or 4 "silent update", and then send the information to the main program of the mobile phone;
最后会判断客户端版本,与服务器存储的该模块所需要的客户端版本是否一致,如果不一致则下发标识5到手机的主程序,提示用户需要更新客户端才能打开该模块。Finally, it will judge whether the client version is consistent with the client version required by the module stored in the server. If not, it will send the identification 5 to the main program of the mobile phone, prompting the user to update the client to open the module.
具体实施时,本发明所提供方法可基于软件技术实现自动运行流程,也可采用模块化方式实现相应系统。During specific implementation, the method provided by the present invention can realize the automatic operation process based on software technology, and can also realize the corresponding system in a modular manner.
本发明还相应提供一种安卓app动态加载资源功能模块的系统,包括在服务器端设置的模块生成单元,在客户端设置的动态验证更新单元和加载单元,The present invention also correspondingly provides a system for dynamically loading resource function modules of an Android app, including a module generation unit set on the server side, a dynamic verification update unit and a loading unit set on the client side,
所述直播间模块生成单元,用于在服务器端生成单独的资源功能模块;The live room module generation unit is used to generate a separate resource function module on the server side;
所述动态验证更新单元,用于在客户端检验资源功能模块的安全性和更新资源功能模块,该单元包括以下子单元,The dynamic verification and updating unit is used to verify the security of the resource function module and update the resource function module on the client side, and the unit includes the following subunits,
子单元A1,用于当用户打开资源功能模块,首先用包名判断是否加载,如果已加载,命令子单元A9工作,否则命令子单元A2工作;Subunit A1 is used to determine whether to load the resource function module by the package name first when the user opens it. If it has been loaded, order subunit A9 to work, otherwise order subunit A2 to work;
子单元A2,用于扫描plugin目录下该包名的文件是否存在,存在则命令子单元A3工作,否则命令子单元A5工作;Subunit A2 is used to scan whether the file with the package name in the plugin directory exists, and if it exists, order subunit A3 to work, otherwise order subunit A5 to work;
子单元A3,用于判断有几个文件,大于1则取最新的版本命令子单元A4工作,否则直接命令子单元A4工作;Subunit A3 is used to judge how many files there are. If it is greater than 1, the latest version will be used to order subunit A4 to work, otherwise directly order subunit A4 to work;
子单元A4,用于进行加载,加载成功则命令子单元A9工作,加载失败则命令子单元A5工作;Subunit A4 is used for loading. If the loading is successful, the subunit A9 is ordered to work, and if the loading fails, the subunit A5 is ordered to work;
子单元A5,用于在assert目录下寻找是否存在该文件,存在则命令子单元A6工作,不存在则命令子单元A7工作;Subunit A5 is used to find whether the file exists in the assert directory, if it exists, order subunit A6 to work, and if it does not exist, order subunit A7 to work;
子单元A6,用于从assert目录复制到plugin目录,然后命令子单元A4工作;Subunit A6 is used to copy from the assert directory to the plugin directory, and then order subunit A4 to work;
子单元A7,用于请求api,加上包名,命令子单元A8工作;Subunit A7 is used to request api, add the package name, and order subunit A8 to work;
子单元A8,用于下载该插件,命令子单元A4工作;Subunit A8 is used to download the plug-in and order subunit A4 to work;
子单元A9,用于联网判断安全性及更新;Sub-unit A9 is used to judge security and update through networking;
子单元A10,用于判断返回数据,若插件不安全或有更新返回子单元A8,若插件安全且没有更新,打开插件;Subunit A10 is used to judge the returned data. If the plug-in is not safe or updated, return to sub-unit A8. If the plug-in is safe and not updated, open the plug-in;
所述加载单元,用于在客户端下载及加载资源功能模块,该单元包括以下子单元,The loading unit is used to download and load resource function modules on the client side, and the unit includes the following subunits,
子单元B1,用于传入包名、versioncode和渠道号生成md5字符串,并传入url下载地址,文件hash;Subunit B1 is used to pass in package name, versioncode and channel number to generate md5 string, and pass in url download address and file hash;
子单元B2,用于在plugin目录中新建名称为temp的文件夹,并根据url下载地址下载该资源功能模块,下载完成则命令子单元B3工作,下载失败则任务终止;Subunit B2 is used to create a new folder named temp in the plugin directory, and download the resource function module according to the url download address. After the download is completed, the subunit B3 is ordered to work. If the download fails, the task is terminated;
子单元B3,用于校验hash,并移动到plugin文件夹中;如果校验成功则命令子单元B4工作,否则任务终止;Subunit B3 is used to verify the hash and move it to the plugin folder; if the verification is successful, order subunit B4 to work, otherwise the task is terminated;
子单元B4,用于扫描plugin目录下该包名的文件是否大于预设的本地缓存模块数量n,是则命令子单元B5工作,否则命令子单元B6工作;Subunit B4 is used to scan whether the file of the package name in the plugin directory is greater than the preset number n of local cache modules, and if so, order subunit B5 to work, otherwise order subunit B6 to work;
子单元B5,用于根据扫描文件夹中所有该资源功能模块的版本号,并进行排序,删除较老版本的文件,直到剩下n个资源功能模块的文件,命令子单元B6工作;The subunit B5 is used to scan and sort the version numbers of all the resource function modules in the folder, delete files of older versions, and order the subunit B6 to work until the files of n resource function modules remain;
子单元B6,用于进行加载并提示用户,实现下载回调。The subunit B6 is used for loading and prompting the user to implement download callback.
各模块具体实现可参见相应步骤,本发明不予赘述。For the specific implementation of each module, reference may be made to the corresponding steps, which will not be described in detail in the present invention.
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。The specific embodiments described herein are merely illustrative of the spirit of the invention. Those skilled in the art to which the present invention belongs can make various modifications or supplements to the described specific embodiments or adopt similar methods to replace them, but they will not deviate from the spirit of the present invention or go beyond the definition of the appended claims range.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610506610.8A CN106131612B (en) | 2016-06-30 | 2016-06-30 | The method and system of Android app dynamically load resource function module |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610506610.8A CN106131612B (en) | 2016-06-30 | 2016-06-30 | The method and system of Android app dynamically load resource function module |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN106131612A true CN106131612A (en) | 2016-11-16 |
| CN106131612B CN106131612B (en) | 2019-03-05 |
Family
ID=57467642
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201610506610.8A Active CN106131612B (en) | 2016-06-30 | 2016-06-30 | The method and system of Android app dynamically load resource function module |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN106131612B (en) |
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107624211A (en) * | 2017-06-09 | 2018-01-23 | 畅充科技(上海)有限公司 | Charging method and device |
| CN108664265A (en) * | 2018-05-15 | 2018-10-16 | 玩咖欢聚文化传媒(北京)有限公司 | The interpolation method and system of Android application program |
| CN109213534A (en) * | 2017-06-30 | 2019-01-15 | 武汉斗鱼网络科技有限公司 | A kind of method and device of extension live streaming software function |
| CN109582684A (en) * | 2018-11-30 | 2019-04-05 | 深圳市盟天科技有限公司 | A kind of update method of local cache data, device, server and storage medium |
| CN110069729A (en) * | 2017-11-15 | 2019-07-30 | 百度在线网络技术(北京)有限公司 | A kind of offline cache method and system of application |
| CN110069505A (en) * | 2017-09-21 | 2019-07-30 | 张锐 | Off-line data processing method and off-line data updating device |
| CN110162727A (en) * | 2019-05-29 | 2019-08-23 | 上海有谱网络科技有限公司 | The method of android system HTML5 resource local cache |
| CN110417912A (en) * | 2019-08-08 | 2019-11-05 | 成都九洲电子信息系统股份有限公司 | A kind of method that file download is adjusted back after the completion |
| CN110784540A (en) * | 2019-10-31 | 2020-02-11 | 四川巧夺天工信息安全智能设备有限公司 | Method for reducing and accelerating flow of digital media distribution platform based on multi-terminal decision |
| CN111416842A (en) * | 2020-03-06 | 2020-07-14 | 科大讯飞股份有限公司 | Automatic resource cluster distribution and hot update system and method |
| CN113850941A (en) * | 2021-09-08 | 2021-12-28 | 深圳柏成科技有限公司 | Unattended access control system remote upgrading method |
| CN114528038A (en) * | 2022-01-06 | 2022-05-24 | 厦门游动网络科技有限公司 | Method, system, electronic device and storage medium for loading module in APP in real time |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140173389A1 (en) * | 2012-12-13 | 2014-06-19 | Hon Hai Precision Industry Co., Ltd. | Updating system and method |
| CN104699511A (en) * | 2015-03-27 | 2015-06-10 | 北京奇虎科技有限公司 | Plug-in upgrading method and plug-in upgrading device |
| CN104717301A (en) * | 2015-03-27 | 2015-06-17 | 北京奇虎科技有限公司 | Plug-in download method and device |
| CN104714828A (en) * | 2015-03-31 | 2015-06-17 | 北京奇虎科技有限公司 | Methods and devices for installing and operating application |
| CN105373396A (en) * | 2015-08-14 | 2016-03-02 | 腾讯科技(深圳)有限公司 | Method and device for updating plug-in in plug-in platform |
| CN105607935A (en) * | 2015-12-24 | 2016-05-25 | 北京奇虎科技有限公司 | Application updating method and terminal and server |
-
2016
- 2016-06-30 CN CN201610506610.8A patent/CN106131612B/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140173389A1 (en) * | 2012-12-13 | 2014-06-19 | Hon Hai Precision Industry Co., Ltd. | Updating system and method |
| CN104699511A (en) * | 2015-03-27 | 2015-06-10 | 北京奇虎科技有限公司 | Plug-in upgrading method and plug-in upgrading device |
| CN104717301A (en) * | 2015-03-27 | 2015-06-17 | 北京奇虎科技有限公司 | Plug-in download method and device |
| CN104714828A (en) * | 2015-03-31 | 2015-06-17 | 北京奇虎科技有限公司 | Methods and devices for installing and operating application |
| CN105373396A (en) * | 2015-08-14 | 2016-03-02 | 腾讯科技(深圳)有限公司 | Method and device for updating plug-in in plug-in platform |
| CN105607935A (en) * | 2015-12-24 | 2016-05-25 | 北京奇虎科技有限公司 | Application updating method and terminal and server |
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107624211A (en) * | 2017-06-09 | 2018-01-23 | 畅充科技(上海)有限公司 | Charging method and device |
| CN109213534A (en) * | 2017-06-30 | 2019-01-15 | 武汉斗鱼网络科技有限公司 | A kind of method and device of extension live streaming software function |
| CN110069505A (en) * | 2017-09-21 | 2019-07-30 | 张锐 | Off-line data processing method and off-line data updating device |
| CN110069729B (en) * | 2017-11-15 | 2022-07-01 | 上海优扬新媒信息技术有限公司 | Offline caching method and system for application |
| CN110069729A (en) * | 2017-11-15 | 2019-07-30 | 百度在线网络技术(北京)有限公司 | A kind of offline cache method and system of application |
| CN108664265A (en) * | 2018-05-15 | 2018-10-16 | 玩咖欢聚文化传媒(北京)有限公司 | The interpolation method and system of Android application program |
| CN109582684A (en) * | 2018-11-30 | 2019-04-05 | 深圳市盟天科技有限公司 | A kind of update method of local cache data, device, server and storage medium |
| CN110162727A (en) * | 2019-05-29 | 2019-08-23 | 上海有谱网络科技有限公司 | The method of android system HTML5 resource local cache |
| CN110417912B (en) * | 2019-08-08 | 2022-01-28 | 成都九洲电子信息系统股份有限公司 | Method for calling back after file downloading is completed |
| CN110417912A (en) * | 2019-08-08 | 2019-11-05 | 成都九洲电子信息系统股份有限公司 | A kind of method that file download is adjusted back after the completion |
| CN110784540A (en) * | 2019-10-31 | 2020-02-11 | 四川巧夺天工信息安全智能设备有限公司 | Method for reducing and accelerating flow of digital media distribution platform based on multi-terminal decision |
| CN110784540B (en) * | 2019-10-31 | 2022-03-04 | 四川巧夺天工信息安全智能设备有限公司 | Method for reducing and accelerating flow of digital media distribution platform based on multi-terminal decision |
| CN111416842A (en) * | 2020-03-06 | 2020-07-14 | 科大讯飞股份有限公司 | Automatic resource cluster distribution and hot update system and method |
| CN113850941A (en) * | 2021-09-08 | 2021-12-28 | 深圳柏成科技有限公司 | Unattended access control system remote upgrading method |
| CN114528038A (en) * | 2022-01-06 | 2022-05-24 | 厦门游动网络科技有限公司 | Method, system, electronic device and storage medium for loading module in APP in real time |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106131612B (en) | 2019-03-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106131612A (en) | The method and system of Android app dynamic load resource function module | |
| US7480907B1 (en) | Mobile services network for update of firmware/software in mobile handsets | |
| CN100456805C (en) | A TFTP-based IPTV set-top box software network upgrade method | |
| RU2367005C2 (en) | System and method for updating files through correction with compressed updates | |
| TWI359597B (en) | Method,computer system ,and computer-readable medi | |
| JP2000059440A (en) | Verification of data transfer based on specific id code | |
| KR20050074993A (en) | Upgrading of electronic files including automatic recovery from failure and errors occurring during the upgrade | |
| CN110879713B (en) | Android terminal strong encryption plug-in thermal update management method | |
| WO2022142153A1 (en) | Electricity meter upgrading method and system, smart meter, and storage medium | |
| EP1991941A1 (en) | Apparatus and methods for managing time sensitive application privileges on a wireless device | |
| US7558963B2 (en) | Communication device and program | |
| CN104391729B (en) | Programme upgrade method and device based on Root authority | |
| US11003435B2 (en) | Manifest trialing techniques | |
| CN115515012B (en) | Key burning method, device, electronic equipment board and storage medium | |
| US8549166B2 (en) | Execution of unverified programs in a wireless, device operating environment | |
| CN107623735A (en) | OpenSSL-based accurate update and upgrade system and method in a credit information machine system | |
| CN108958785B (en) | Application program upgrading method and device | |
| CN105786636A (en) | A system repair method and device | |
| CN108259556A (en) | Method for parameter configuration and terminal | |
| CN111427607B (en) | Configuration file repairing method, device and computer readable storage medium | |
| CN111399867A (en) | Software upgrading method, device, equipment and computer readable storage medium | |
| US8646070B1 (en) | Verifying authenticity in data storage management systems | |
| CN119597538A (en) | System updating method, device, electronic device and storage medium | |
| CN113905263B (en) | Set top box control method, equipment and storage medium | |
| CN104426894B (en) | A kind of register method of terminal applies, business platform equipment and terminal |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20240306 Address after: 830000, Room 17A, Building 17, Block A, Times Square Community, No. 59 Guangming Road, Tianshan District, Urumqi, Xinjiang Uygur Autonomous Region BD00244 Patentee after: Urumqi Bangbangjun Technology Co.,Ltd. Country or region after: China Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, China Science and Technology Park Innovation Enterprise Base 2 A Unit 2 Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd. Country or region before: China |
|
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20241209 Address after: Building A, 12th Floor, 1219-6, China Merchants Yazhou Bay Free Trade Center, Yazhou District, Sanya City, Hainan Province, China 572024 Patentee after: Sanya Leifeng Information Technology Co.,Ltd. Country or region after: China Address before: 830000, Room 17A, Building 17, Block A, Times Square Community, No. 59 Guangming Road, Tianshan District, Urumqi, Xinjiang Uygur Autonomous Region BD00244 Patentee before: Urumqi Bangbangjun Technology Co.,Ltd. Country or region before: China |
|
| TR01 | Transfer of patent right |