应用程序功能动态化配置方法、装置、设备及存储介质与流程

文档序号:26750618发布日期:2021-09-25 02:23阅读:114来源:国知局
应用程序功能动态化配置方法、装置、设备及存储介质与流程
应用程序功能动态化配置方法、装置、设备及存储介质
【技术领域】
1.本发明涉及数据处理技术领域,尤其涉及一种应用程序功能动态化配置方法、装置、设备及存储介质。


背景技术:

2.现有技术中对智能终端的应用程序进行功能配置的方式为:应用程序启动时,通过网络向服务器请求对应最新版本的功能配置清单,在服务器返回功能配置清单后才能完成应用程序启动,用户才能启动应用程序中的应用组件进入相应操作界面,导致用户等待时间较长,应用组件启动不流畅。


技术实现要素:

3.本发明的目的在于提供一种应用程序功能动态化配置方法、装置、设备及存储介质,以解决现有技术中应用组件启动不流畅的技术问题。
4.本发明的技术方案如下:提供一种应用程序功能动态化配置方法,包括:
5.响应于用户对应用程序的启动请求,启动所述启动请求对应的应用程序;
6.监测到对所述应用程序中任一应用组件的启动操作时,从本地磁盘获取所述应用程序的功能配置清单,其中,所述功能配置清单用于记录所述应用程序的各功能的配置状态;
7.当所述功能配置清单获取失败时,从所述应用程序的plist文件获取初始的功能配置清单,对所述初始的功能配置清单添加待更新标签,将所述初始的功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本更新请求,其中,所述版本更新请求包括所述应用程序的标识;
8.当所述功能配置清单获取成功时,将所述功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本校验请求,其中,所述版本校验请求包括所述应用程序的标识以及所述功能配置清单的版本号;
9.接收所述服务器反馈的版本校验结果;
10.若所述版本校验结果为所述功能配置清单的版本不是最新版本,则对所述内存中存储的功能配置清单添加待更新标签,向所述服务器发送所述功能配置清单的版本更新请求;
11.若所述版本校验结果为所述功能配置清单的版本是最新版本,则对所述内存中存储的功能配置清单添加无需更新标签。
12.可选地,所述应用程序功能动态化配置方法,还包括:
13.接收服务器发送的最新版本的功能配置清单,分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签;
14.向所述应用程序中当前已经启动的所述应用组件发送第一功能配置更新通知,其
中,所述第一功能配置更新通知包括所述最新版的功能配置清单的内存地址和最新版本号。
15.可选地,所述应用程序功能动态化配置方法,还包括:
16.接收服务器发送的最新版本的功能配置清单,将所述最新版本的功能配置清单和本地磁盘中存储的功能配置清单进行比对,生成功能配置差异文件;
17.分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签;
18.向所述应用程序中当前已经启动的所述应用组件发送第二功能配置更新通知,其中,所述第二功能配置更新通知包括功能配置差异文件。
19.可选地,所述应用程序功能动态化配置方法,还包括:
20.响应于用户在所述应用程序操作界面的启动操作,所述启动操作指向的应用组件从内存中获取所述功能配置清单;
21.当所述功能配置清单携带有所述待更新标签时,向服务器发送所述功能配置清单的版本更新请求,根据所述功能配置清单进行功能配置;
22.当所述功能配置清单携带有所述无需更新标签时,根据所述功能配置清单进行功能配置。
23.可选地,所述向服务器发送所述功能配置清单的版本更新请求,包括:
24.向服务器发送所述功能配置清单的版本更新请求并记录所述版本更新请求的请求发送时间;
25.相应地,所述当所述功能配置清单携带有所述待更新标签时,向服务器发送所述功能配置清单的版本更新请求,根据所述功能配置清单进行功能配置,包括:
26.当所述功能配置清单携带有所述待更新标签时,获取当前时间与所述请求发送时间的时间间隔;
27.当所述时间间隔大于或等于预设时间阈值时,向服务器发送所述功能配置清单的版本更新请求,并更新所述请求发送时间,根据所述功能配置清单进行功能配置;
28.当所述时间间隔小于所述预设时间阈值时,根据所述功能配置清单进行功能配置。
29.可选地,所述应用程序功能动态化配置方法还包括:
30.当监测到通信模块重新接入网络时,判断所述内存中存储的功能配置清单是否携带所述待更新标签;
31.当判断结果为是时,向服务器发送所述功能配置清单的版本更新请求。
32.可选地,所述应用程序包括多个应用组件和一个动态化配置组件,所述动态化配置组件设有api接口,所述动态化配置组件通过所述api接口向各所述应用组件发送所述第一功能配置更新通知。
33.本发明的另一技术方案如下:提供一种应用程序功能动态化配置装置,包括:
34.程序启动模块,用于响应于用户对应用程序的启动请求,启动所述启动请求对应的应用程序;
35.任务触发模块,用于监测到对所述应用程序中任一应用组件的启动操作时,从智能终端的本地磁盘获取所述应用程序的功能配置清单,其中,所述功能配置清单用于记录
所述应用程序的各功能的配置状态;
36.第一更新模块,用于当所述功能配置清单获取失败时,从所述应用程序的plist文件获取初始的功能配置清单,对所述初始的功能配置清单添加待更新标签,将所述初始的功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本更新请求,其中,所述版本更新请求包括所述应用程序的标识;
37.版本校验模块,用于当所述功能配置清单获取成功时,将所述功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本校验请求,其中,所述版本校验请求包括所述应用程序的标识以及所述功能配置清单的版本号;
38.第二更新模块,用于接收所述服务器反馈的版本校验结果;若所述版本校验结果为所述功能配置清单的版本不是最新版本,则对所述内存中存储的功能配置清单添加待更新标签,向所述服务器发送所述功能配置清单的版本更新请求;
39.标签添加模块,用于若所述版本校验结果为所述功能配置清单的版本是最新版本,则对所述内存中存储的功能配置清单添加无需更新标签。
40.本发明的另一技术方案如下:提供一种电子设备,包括处理器、以及与所述处理器耦接的存储器,所述存储器存储有可被所述处理器执行的程序指令;所述处理器执行所述存储器存储的所述程序指令时实现上述的应用程序功能动态化配置方法。
41.本发明的另一技术方案如下:提供一种存储介质,所述存储介质内存储有程序指令,所述程序指令被处理器执行时实现能够实现上述的应用程序功能动态化配置方法。
42.本发明的应用程序功能动态化配置方法、装置、设备及存储介质,在应用程序启动后,应用组件被首次触发启动时,从本地磁盘或从plist文件获取功能配置清单,将获取的功能配置清单存储于智能终端的内存中,使得应用组件无需等待服务器反馈,直接进行功能配置;在应用程序的运行过程中,对从本地磁盘获取的功能配置清单进行版本校验,版本校验结果不是最新版时或者从plist文件获取功能配置清单后,执行版本更新操作,用户无需等待功能配置清单更新完毕就能使用对应功能组件,使功能组件的启动更加流畅;在本发明的可选实施方式中,功能配置清单更新完毕后,对当前已经启动的应用组件发送更新通知,以使应用组件及时重新进行功能配置,在实现功能配置的准确性的同时,增加了用户体验。
【附图说明】
43.图1为本发明第一实施例的应用程序功能动态化配置方法的流程图;
44.图2为本发明第二实施例的应用程序功能动态化配置方法的流程图;
45.图3为本发明第二实施例的应用程序功能动态化配置方法中步骤s210的子步骤流程图;
46.图4为本发明第三实施例的应用程序功能动态化配置装置的结构框图;
47.图5为本发明第四实施例的电子设备的结构示意图;
48.图6为本发明第五实施例的存储介质的结构示意图。
【具体实施方式】
49.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.本发明中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本发明实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
51.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
52.图1为本发明第一实施例的应用程序功能动态化配置方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该应用程序功能动态化配置方法包括步骤:
53.s100,响应于用户对应用程序的启动请求,启动所述启动请求对应的应用程序。
54.在本实施例中,该应用程序功能动态化配置方法应用于智能终端,作为执行主体的智能终端接收到用户对应用程序的启动请求,启动所述启动请求对应的应用程序。
55.s101,监测到对所述应用程序中任一应用组件的启动操作时,从本地磁盘获取所述应用程序的功能配置清单。
56.其中,所述功能配置清单用于记录所述应用程序的各功能的配置状态。
57.其中,应用程序(app)包括多个应用组件,例如,聊天组件、支付组件、计算组件、页面展示组件等,每个应用组件具有一种或多种功能,例如,聊天组件具有分享功能、文件发送功能、直播功能、转账功能等,不同的应用组件可能具有相同的功能,如聊天组件和支付组件均具有转账功能。
58.在本实施例中,当应用程序启动后,用户在应用程序的操作界面上进行操作,触发应用组件的启动,应用程序启动对应的应用组件时,需要对应用组件的各功能进行配置。各应用组件均是基于用户在操作界面上的操作进行启动的,当用户点击进入聊天界面时触发聊天组件的启动操作;当用户点击转账汇款按钮时触发支付组件的启动操作。
59.在本实施例中,所述功能配置清单记录了应用程序所有功能的配置状态,所有的功能组件共享所述功能配置清单,各应用组件按照功能配置清单上记录的配置状态对对应的功能进行配置。
60.当开发者发现应用程序的某个功能的配合程序存在漏洞需要修复,或者,应用程序的某个功能相关的数据库需要进行数据维护,服务器会更新该应用程序的功能配置清
单,将对应功能的配置状态修改为隐藏,以使得用户暂时无法使用该功能。例如,当工商银行的服务器进行程序或数据维护时,服务器会更新功能配置清单,更新后得到的第一功能配置清单中工商银行数据交互功能的配置状态为隐藏,应用程序启动后获取到该第一功能配置清单,利用该第一功能配置清单对支付组件进行功能配置后,用户在应用程序中无法使用工商银行进行转账或二维码支付操作;当工商银行的服务器程序或数据维护完毕时,对第一功能配置清单进行更新,得到新版本的第二功能配置清单中工商银行数据交互功能的配置状态为显示,应用程序启动后获取到该第二功能配置清单,利用该第二功能配置清单对支付组件进行功能配置后,用户在应用程序中可以正常使用工商银行进行转账或二维码支付操作。
61.需要说明的是,内存中存储的数据能快速呈现到应用程序的界面,应用程序退出后,内存中相关的数据丢失;而本地磁盘中数据在应用程序退出后不会丢失,但呈现到应用程序的界面的速度慢,应用程序卸载后,本地磁盘中相关的数据丢失;服务器存储的数据具有及时性,不易丢失,但是获取服务器中存储的数据速度非常慢。
62.在本实施例中,应用组件启动后,从内存中获取功能配置清单进行功能配置,但是,应用程序刚刚启动时,内存中没有存储对应的功能配置清单,如果直接从服务器获取最新版本的功能配置清单会导致应用组件加载速度慢,从而影响用户对该应用组件的正常使用,于是,在本实施例中,当应用程序启动后,响应于任一个应用组件的启动操作,从智能终端的本地磁盘获取对应的功能配置清单。
63.s102,当所述功能配置清单获取失败时,从所述应用程序的plist文件获取初始的功能配置清单,对所述初始的功能配置清单添加待更新标签,将所述初始的功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本更新请求。
64.其中,所述版本更新请求包括所述应用程序的标识,当本地磁盘中不存在功能配置清单时,说明该应用程序为新安装的应用程序。
65.其中,plist(property list,属性列表)文件为应用程序安装在ios系统时生成的文件,用于存储可以重复使用的信息,plist文件中存储有应用程序的初始配置表,从所述初始配置表中获取初始的功能配置清单,初始的功能配置清单是应用程序开发完毕时的配置信息,肯定不是最新版,此时无需发起版本校验请求,直接添加待更新标签。并且,将初始的功能配置清单存储到所述智能终端的内存中,以使得待启动的应用组件能够从内存中读取该初始的功能配置清单完成功能配置,不影响用户的正常使用。具体地,配置状态为显示或隐藏,当应用组件读取到功能的配置状态为显示时,在应用组件的界面中显示对应功能;当应用组件读取到功能的配置状态为隐藏时,在应用组件的界面中隐藏对应功能。
66.同时,向服务器发送所述功能配置清单的版本更新请求,由于智能终端所处的网络环境可能不佳,向服务器发送所述功能配置清单的版本更新请求之后,可能无法立即从服务器获取到最新版本的功能配置清单。在服务器反馈最新版本的功能配置清单至所述智能终端之前,后续启动的其他应用组件基于初始的功能配置清单中携带的待更新标签能够不断触发功能配置清单更新操作,具体参见后续第二实施例步骤s301至步骤s303中说明。
67.其中,应用程序的标识用于标识该应用程序,服务器接收所述版本更新请求后,获取所述应用程序的标识对应的最新版本功能配置清单并将所述最新版本功能配置清单发送至发起更新请求的对应智能终端。
68.s103,当所述功能配置清单获取成功时,将所述功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本校验请求,其中,所述版本校验请求包括所述应用程序的标识以及所述功能配置清单的版本号。
69.其中,当智能终端的本地磁盘中已经存在该应用程序的功能配置清单时,立即将该功能配置清单复制到内存中存储,以使得待启动的应用组件能够从内存中读取该功能配置清单完成功能配置,不影响用户的正常使用。同样地,配置状态为显示或隐藏,当应用组件读取到功能的配置状态为显示时,在应用组件的界面中显示对应功能;当应用组件读取到功能的配置状态为隐藏时,在应用组件的界面中隐藏对应功能。
70.其中,从本地磁盘获取的功能配置清单可能不是最新的版本,同时需要校验该功能配置清单是否为最新,获取本地磁盘中所述功能配置清单的版本号,将应用程序标识和所获取的版本号生成版本校验请求发送至服务器,服务器接收到版本校验请求后,根据所述应用程序的标识和所述版本号检测所述功能配置清单的版本是否为最新版本,将校验结果反馈至智能终端。
71.s104,接收服务器反馈的版本校验结果;若所述功能配置清单的版本不是最新版本,则对所述内存中存储的功能配置清单添加待更新标签,向服务器发送所述功能配置清单的版本更新请求。
72.同样地,由于智能终端所处的网络环境可能不佳,向服务器发送所述功能配置清单的版本更新请求之后,可能无法立即从服务器获取到最新版本的功能配置清单。在服务器反馈最新版本的功能配置清单至所述智能终端之前,后续启动的其他应用组件基于初始的功能配置清单中携带的待更新标签能够不断触发功能配置清单更新操作。
73.其中,所述版本更新请求同样包括所述应用程序的标识,服务器接收所述版本更新请求后,获取所述应用程序的标识对应的最新版本功能配置清单并将所述最新版本功能配置清单发送至发起更新请求的对应智能终端。
74.s105,若所述功能配置清单的版本是最新版本,则对所述内存中存储的功能配置清单添加无需更新标签。
75.其中,后续启动的其他应用组件基于该无需更新标签仅仅进行功能配置,不触发功能配置清单更新操作。
76.在一个可选的实施方式中,请继续参阅图1所示,本实施例的应用程序功能动态化配置方法,还进一步包括如下步骤:
77.s106,接收服务器发送的最新版本的功能配置清单,分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签。
78.其中,后续启动的其他应用组件基于该无需更新标签仅仅进行功能配置,不触发功能配置清单更新操作。
79.s107,向所述应用程序中当前已经启动的所述应用组件发送第一功能配置更新通知。
80.其中,所述第一功能配置更新通知包括所述最新版的功能配置清单的内存地址和最新版本号,当前已经启动的应用组件接到所述功能配置更新通知后,根据内存地址和最新版本号从内存中读取所述最新版本的功能配置清单进行功能配置更新,应用组件可以按
照最新版本的功能配置清单重新对所有功能进行状态配置。
81.在本实施例中,应用程序除了各应用组件,还包括动态化配置组件,步骤s101至步骤s105由动态化配置组件执行,步骤s106至步骤s107也由动态化配置组件执行,动态化配置组件为各应用组件提供了一个api接口,及时向各当前已经启动的应用组件发送第一功能配置更新通知。
82.在一个可选的实施方式中,本实施例的应用程序功能动态化配置方法,还进一步包括如下步骤:
83.s108,当监测到通信模块重新接入网络时,判断所述内存中存储的功能配置清单是否携带所述待更新标签;
84.其中,通信模块为智能终端中用于与网络连接的模块。
85.s109,当判断结果为是时,向服务器发送所述功能配置清单的版本更新请求。
86.当网络环境不佳时,虽然之前已经向服务器发送了版本更新请求,由于网络问题很可能造成版本更新请求发送不成功,当所述内存中存储的功能配置清单携带所述待更新标签时,说明功能配置清单还未成功更新,为了使得已经启动的应用组件能够及时更新功能配置,网络重新连接时再次向服务器发送所述功能配置清单的版本更新请求。步骤s108至步骤s109也可以由动态化配置组件执行。
87.图2为本发明第二实施例的应用程序功能动态化配置方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图2所示的流程顺序为限。如图2所示,该应用程序功能动态化配置方法包括步骤:
88.s200,响应于用户对应用程序的启动请求,启动所述启动请求对应的应用程序。
89.s201,应用程序启动后,监测到对所述应用程序中任一应用组件的启动操作时,从本地磁盘获取所述应用程序的功能配置清单。
90.其中,所述功能配置清单用于记录所述应用程序的各功能的配置状态。
91.s202,当所述功能配置清单获取失败时,从所述应用程序的plist文件获取初始的功能配置清单,对所述初始的功能配置清单添加待更新标签,将所述初始的功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本更新请求并记录所述版本更新请求的请求发送时间,其中,所述版本更新请求包括所述应用程序的标识。
92.s203,当所述功能配置清单获取成功时,将所述功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本校验请求,其中,所述版本校验请求包括所述应用程序的标识以及所述功能配置清单的版本号。
93.s204,接收服务器反馈的版本校验结果;若所述功能配置清单的版本不是最新版本,则对所述内存中存储的功能配置清单添加待更新标签,向服务器发送所述功能配置清单的版本更新请求并记录所述版本更新请求的请求发送时间。
94.s205,若所述功能配置清单的版本是最新版本,则对所述内存中存储的功能配置清单添加无需更新标签。
95.本实施例的步骤s201至步骤s205分别与第一实施例中的步骤s101至s105对应,与第一实施例的不同之处在于,在步骤s202以及步骤s204中,还记录了版本更新请求的请求发送时间,相同的部分参见第一实施例的描述,在此不进行一一赘述。
96.s206,接收服务器发送的最新版本的功能配置清单,将所述最新版本的功能配置
清单和本地磁盘中存储的功能配置清单进行比对,生成功能配置差异文件。
97.s207,分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签。
98.其中,后续启动的其他应用组件基于该无需更新标签仅仅进行功能配置,不触发功能配置清单更新操作。
99.s208,向所述应用程序中当前已经启动的所述应用组件发送第二功能配置更新通知。
100.其中,所述第二功能配置更新通知包括功能配置差异文件,当前已经启动的应用组件接到所述功能配置更新通知后,根据所述功能配置差异文件进行功能配置更新,应用组件可以无需对所有功能进行状态配置。
101.上述步骤s201至步骤s208均由动态化配置组件。
102.在本实施例中,该应用程序功能动态化配置方法还包括如下步骤:
103.s209,响应于用户在所述应用程序操作界面的启动操作,所述启动操作指向的应用组件从内存中获取所述功能配置清单;
104.s210,当所述功能配置清单携带有所述待更新标签时,向服务器发送所述功能配置清单的版本更新请求,根据所述功能配置清单进行功能配置;
105.s211,当所述功能配置清单携带有所述无需更新标签时,根据所述功能配置清单进行功能配置。
106.步骤s209至步骤s211由启动操作指向的应用组件执行,在应用程序的运行过程中,当所述功能配置清单携带有所述待更新标签时不断触发更新操作。
107.进一步地,为了避免在网络环境较差时,各应用组件不断触发更新操作,频繁向服务器发送版本更新请求,请参阅图3所示,步骤s210具体包括如下步骤:
108.s301,当所述功能配置清单携带有所述待更新标签时,获取当前时间与所述请求发送时间的时间间隔;
109.s302,当所述时间间隔大于或等于预设时间阈值时,向服务器发送所述功能配置清单的版本更新请求,并更新所述请求发送时间,根据所述功能配置清单进行功能配置;
110.s303,当所述时间间隔小于所述预设时间阈值时,根据所述功能配置清单进行功能配置;
111.当所述功能配置清单携带有所述待更新标签时,多个应用组件在短时间内相继启动或同时启动而不断触发版本更新请求,导致应用程序出现异常或出现卡顿,在本实施方式中,设置了版本更新请求发送的最小时间间隔,避免了上述情况的发生,例如,最小时间间隔为6分钟。
112.在步骤s211之后还包括如下步骤:
113.s212,将所述功能配置清单上传至区块链中,以使得所述区块链对所述功能配置清单进行加密存储。
114.在步骤s212中,基于所述功能配置清单分别得到对应的摘要信息,具体来说,摘要信息由所述功能配置清单进行散列处理得到,比如利用sha256s算法处理得到。将摘要信息上传至区块链可保证其安全性和对用户的公正透明性。用户设备可以从区块链中下载得该摘要信息,以便查证所述功能配置清单是否被篡改。本示例所指区块链是分布式数据存储、
点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
115.图4为本发明第三实施例的应用程序功能动态化配置装置的结构示意图。如图4所示,该应用程序功能动态化配置装置40包括:程序启动模块46、任务触发模块41、第一更新模块42、版本校验模块43、第二更新模块44以及标签添加模块45,其中,程序启动模块46,用于响应于用户对应用程序的启动请求,启动所述启动请求对应的应用程序;任务触发模块41,用于监测到对所述应用程序中任一应用组件的启动操作时,从智能终端的本地磁盘获取所述应用程序的功能配置清单,其中,所述功能配置清单用于记录所述应用程序的各功能的配置状态;第一更新模块42,用于当所述功能配置清单获取失败时,从所述应用程序的plist文件获取初始的功能配置清单,对所述初始的功能配置清单添加待更新标签,将所述初始的功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本更新请求,其中,所述版本更新请求包括所述应用程序的标识;版本校验模块43,用于当所述功能配置清单获取成功时,将所述功能配置清单存储到所述智能终端的内存中,向服务器发送所述功能配置清单的版本校验请求,其中,所述版本校验请求包括所述应用程序的标识以及所述功能配置清单的版本号;第二更新模块44,用于接收服务器反馈的版本校验结果,当所述功能配置清单的版本不是最新版本时,对所述内存中存储的功能配置清单添加待更新标签,向服务器发送所述功能配置清单的版本更新请求;标签添加模块45,用于当所述功能配置清单的版本是最新版本时,对所述内存中存储的功能配置清单添加无需更新标签。
116.进一步地,该应用程序功能动态化配置装置40还包括重新配置模块,用于接收服务器发送的最新版本的功能配置清单,分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签;向所述应用程序中当前已经启动的所述应用组件发送第一功能配置更新通知,其中,所述第一功能配置更新通知包括所述最新版的功能配置清单的内存地址和最新版本号。
117.更进一步地,该重新配置模块还用于接收服务器发送的最新版本的功能配置清单,将所述最新版本的功能配置清单和本地磁盘中存储的功能配置清单进行比对,生成功能配置差异文件;分别将所述最新版本的功能配置清单更新存储至所述内存和所述本地磁盘,对所述内存中存储的最新版本的功能配置清单添加无需更新标签;向所述应用程序中当前已经启动的所述应用组件发送第二功能配置更新通知,其中,所述第二功能配置更新通知包括功能配置差异文件。
118.进一步地,该应用程序功能动态化配置装置40还包括第三更新模块,用于响应于用户在所述应用程序操作界面的启动操作,所述启动操作指向的应用组件从内存中获取所述功能配置清单;当所述功能配置清单携带有所述待更新标签时,向服务器发送所述功能配置清单的版本更新请求,根据所述功能配置清单进行功能配置;当所述功能配置清单携带有所述无需更新标签时,根据所述功能配置清单进行功能配置。
119.更进一步地,第一更新模块42以及第二更新模块44还用于向服务器发送所述功能配置清单的版本更新请求并记录所述版本更新请求的请求发送时间。相应地,该第三更新
模块还用于当所述功能配置清单携带有所述待更新标签时,获取当前时间与所述请求发送时间的时间间隔;当所述时间间隔大于或等于预设时间阈值时,向服务器发送所述功能配置清单的版本更新请求,并更新所述请求发送时间,根据所述功能配置清单进行功能配置;当所述时间间隔小于所述预设时间阈值时,根据所述功能配置清单进行功能配置。
120.进一步地,该应用程序功能动态化配置装置40还包括第四更新模块,用于当监测到所述智能终端重新接入网络时,判断所述内存中存储的功能配置清单是否携带所述待更新标签;当判断结果为是时,向服务器发送所述功能配置清单的版本更新请求。
121.图5是本发明第四实施例的电子设备的结构示意图。如图5所示,该电子设备50包括处理器51及和处理器51耦接的存储器52。
122.存储器52存储有用于实现上述任一实施例的应用程序功能动态化配置方法的程序指令。
123.处理器51用于执行存储器52存储的程序指令以进行应用程序功能动态化配置。
124.其中,处理器51还可以称为cpu(central processing unit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器31还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
125.参阅图6,图6为本发明第五实施例的存储介质的结构示意图。本发明第五实施例的存储介质60存储有能够实现上述所有方法的程序指令61,其中,该程序指令41可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
126.在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
127.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围。
128.以上所述的仅是本发明的实施方式,在此应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1