应用程序的运行控制方法及装置、计算机设备及存储介质与流程

文档序号:28596417发布日期:2022-01-22 10:27阅读:70来源:国知局
应用程序的运行控制方法及装置、计算机设备及存储介质与流程

1.本技术涉及应用程序技术领域,特别涉及一种应用程序的运行控制方法、应用程序的运行控制装置、计算机设备及计算机可读存储介质。


背景技术:

2.当应用程序开发者需要将同一个应用程序的两个不同版本投放到应用市场上,并且按不同的国家或地区向用户提供这两个不同版本时,由于当前大部分主流应用市场均不支持按国家或地区投放不同版本的功能,开发者需要在每一个应用市场上申请两个不同的app id,并且将应用程序编译打包成两个不同包名(bundle id)后分别上传至各应用市场的两个app id中,然后根据国家或地区引导用户下载安装相应app id的应用程序,因此,导致了对不同版本的应用程序的管理上的困难。


技术实现要素:

3.为解决上述背景技术中的至少一个技术问题,本技术实施方式提供了一种应用程序的运行控制方法、应用程序的运行控制装置、计算机设备及计算机可读存储介质。
4.本技术实施方式的应用程序的运行控制方法包括:
5.整合多个不同版本的子应用程序为一个母应用程序,多个所述子应用程序分别与不同的多个身份标识一一对应地关联;
6.在所述母应用程序被启动时,获取用户输入以确定被选择的身份标识;及
7.运行与被选择的身份标识相关联的子应用程序。
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.获取模块,用于在所述母应用程序被启动时,获取用户输入以确定被选择的身份标识;及
33.运行模块,用于运行与被选择的身份标识相关联的子应用程序。
34.本技术实施方式的计算机设备,包括:
35.一个或多个处理器;
36.存储器;及
37.一个或多个计算机程序,其中,所述一个或多个计算机程序被存储在所述存储器中,并被配置为由所述一个或多个处理器执行,所述一个或多个计算程序配置用于:执行本技术任一实施方式所述的应用程序的运行控制方法。
38.本技术实施方式的非易失性计算机可读存储介质存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行本技术任一实施方式所述的应用程序的运行控制方法。
39.本技术实施方式的应用程序的运行控制方法、应用程序的运行控制装置、计算机设备及计算机可读存储介质中,多个不同版本的子应用程序整合为一个母应用程序,对于不同国家或地区的应用市场,都可以上线同一个母应用程序,不需要对多个母应用程序进行管理,同时,由于不同的国家或地区的应用市场上的用户都使用同一个母应用程序,容易对多个国家和地区的使用数据进行统一管理,降低了管理应用程序的难度及成本。
40.本技术实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
41.本技术的上述和/或附加的方面和优点可以从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
42.图1为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
43.图2为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
44.图3为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
45.图4为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
46.图5为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
47.图6为本技术某些实施方式的应用程序的运行控制方法的流程示意图;
48.图7为本技术某些实施方式的应用程序的运行控制装置的模块示意图;
49.图8为本技术某些实施方式的应用程序的运行控制装置的模块示意图;
50.图9为本技术某些实施方式的计算机可读存储介质与处理器的示意图;
51.图10为本技术某些实施方式的计算机设备的模块示意图。
具体实施方式
52.下面详细描述本技术的实施方式,所述实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本技术的实施方式,而不能理解为对本技术的实施方式的限制。
53.请参阅图1,图1为本技术某些实施方式的应用程序的运行控制方法的流程示意图,本技术实施方式的运行控制方法包括步骤:
54.01:整合多个不同版本的子应用程序为一个母应用程序,多个子应用程序分别与不同的多个身份标识一一对应地关联;
55.02:在母应用程序被启动时,获取用户输入以确定被选择的身份标识;及
56.03:运行与被选择的身份标识相关联的子应用程序。
57.多个不同版本的子应用程序整合为一个母应用程序,对于不同国家或地区的应用市场,都可以上线同一个母应用程序,不需要对多个母应用程序进行管理,同时,由于不同的国家或地区的应用市场上的用户都使用同一个母应用程序,容易对多个国家和地区的使用数据进行统一管理,降低了管理应用程序的难度及成本。
58.步骤01中,整合多个不同版本的子应用程序为一个母应用程序。在编译子应用程序时,每个子应用程序都可以设计为适应特定的用户群体,不同的子应用程序可以编译为适应不同的用户群体。母应用程序对外为一个完整的应用程序,因此,在不同的应用市场上,只需要申请一个母应用程序的app id,不需要对每一个子应用程序都申请app id,无论是哪个用户群体,都可以下载同一个母应用程序并使用。需要说明的是,多个不同版本的子应用程序可以为同一个应用程序产品的不同版本,例如,历史的不同版本,语言的不同版本等。
59.在一个例子中,不同版本包括适用于不同国家或地区的版本;和/或,不同版本包括适用于不同语言的版本;和/或,不同版本包括适用于不同年龄的版本,在此不作限制。
60.每个版本的子应用程序都关联一个唯一的身份标识,不同版本的子应用程序关联
不同的身份标识,便于后续通过身份标识来区分不同版本的子应用程序。身份标识的具体形式可以是任意的编码、符号、数字等,在此不作限制。
61.步骤02中,在母应用程序被启动时,获取用让输入以确定被选择的身份标识。用户在启动母应用程序时,用户的意图为使用整合在母应用程序中的其中一个版本的子应用程序,因此,在供用户使用子应用程序前,需要先确定被用户选择的身份标识,以通过身份标识定位到被选择的子应用程序。
62.步骤03中,运行与被选择的身份标识相关联的子应用程序,通过身份标识定位到被对应的子应用程序后,可以运行该子应用程序并供用户正常使用。此时,其余未被选择的子应用程序不会被触发运行,用户可以正常使用被选择的子应用程序。
63.请参阅图2,图2为本技术某些实施方式的应用程序的运行控制方法的流程示意图,在某些实施方式中,步骤02:在母应用程序被启动时,获取用户输入以确定被选择的身份标识,包括步骤:
64.021:在母应用程序被启动时,获取可供选择的子应用程序的版本数据;
65.022:判断本地是否已存储用户在先对版本的选择结果;
66.023:若是,获取与选择结果对应的身份标识;及
67.024:若否,依据版本数据展示可供选择的版本列表,获取与用户当前选择的版本相对应的身份标识。
68.步骤021中,在母应用程序被启动时,获取可供选择的子应用程序的版本数据,为了让用户对版本进行选择,首先需要获取可供选择的子应用程序的版本数据。所述的版本数据可以在每次用户启动母应用程序时都进行刷新,也可以定时进行刷新,也可以在版本数据有更新时进行刷新,在此不作限制。
69.步骤022中,判断本地是否已存储用户在先对版本的选择结果,可以理解,用户在启动母应用程序时,用户有可能是第一次打开母应用程序,用户也有可能不是第一次打开母应用程序,对于不同使用场景下的用户,需求会不同,因此,需要先进行判断,以便于后续进行更有针对性地运行。在一个例子中,本地存储的用户在先对版本的选择结果为同一用户在上一次的选择结果。
70.步骤023中,若是,获取与选择结果对应的身份标识,此步骤可以针对用户不是第一次打开母应用程序的情景,可以默认使用用户上一次的选择结果,以使用户能够快速地进入子应用程序,不需要再进行重复选择。当然,如果用户需要改变选择结果,可以在进入子应用程序后,再进行额外的设置操作。
71.步骤024中,若否,依据版本数据展示可供选择的版本列表,获取与用户当前选择的版本相对应的身份标识,此步骤可以针对用户第一次打开母应用程序的情景,或者是用户删除了相关的缓存的情景。此时可以展示可供选择的版本列表,用户可以通过例如下拉滚动的方式查看可选的版本,并进行选取操作,然后再依据用户选择的版本获得相对应的身份标识。
72.通过实施步骤021、022、023及024,针对不同需求的用户,都提供便利的应用程序使用体验。
73.请参阅图3,图3为本技术某些实施方式的应用程序的运行控制方法的流程示意图,在某些实施方式中,在步骤024后,步骤02:在母应用程序被启动时,获取用户输入以确
定被选择的身份标识,还包括步骤025:将用户当前选择的版本作为选择结果储存至本地。
74.如果用户是通过展示的版本列表中确定的版本,则将用户当前选择的版本作为选择结果储存在本地,下次同一用户再打开母应用程序时,则可以直接调用该存储的选择结果,而不需要用户再进行选择,提升用户的使用体验。
75.请参阅图4,图4为本技术某些实施方式的应用程序的运行控制方法的流程示意图,在某些实施方式中,步骤021:在母应用程序被启动时,获取可供选择的子应用程序的版本数据,包括步骤:
76.0211:在母应用程序被启动时,向服务器请求获取子应用程序的版本数据;
77.0212:判断本地是否有缓存的版本数据;
78.0213:若否,等待并接收服务器返回的版本数据;及
79.0214:若是,在接收到服务器返回的版本数据前,以缓存的版本数据运行,在接收到服务器返回的版本数据后,以返回的版本数据更新缓存的版本数据。
80.在步骤0211中,在母应用程序被启动时,表明用户有需要使用子应用程序的需求,此时,向服务器请求获取子应用程序的版本数据,以便于后续将最新的版本数据更新到本地中。
81.在步骤0212中,判断本地是否有缓存的版本数据,用户在打开母应用程序时,本地是否有缓存的版本数据会直接影响到后续对于版本数据的处理,因此,需要先进行判断。
82.在步骤0213中,若否,等待并接收服务器返回的版本数据,此时,用户可能是第一次使用该应用程序,缓存中还没有版本数据,而为了让用户选择适用的子应用程序,先获得版本数据并由用户选择,因此,对于此种情况,需要等待并接收服务器返回的版本数据。
83.在步骤0214中,若是,在接收到服务器返回的版本数据前,以缓存的版本数据运行,此时,用户可能不是第一次使用该应用程序,在接收到最新的版本数据之前,可以先默认以缓存的版本数据运行,以降低用户的等待时间,提升使用体验。在接收到服务器返回的版本数据后,再以返回的版本数据更新缓存的版本数据,这一更新的过程用户可以是无感的,不会影响用户的正常使用,当用户下次启动母应用程序时,就能以更新后的版本数据运行。
84.通过实施步骤0211、步骤0212、步骤0213及步骤0214,既可以使得用户在初次使用应用程序时能够依据最新的版本数据选择适用的子应用程序,又使得老用户可以快捷地进入到已选的子应用程序中,且版本数据还能够得到更新。
85.请参阅图5,图5为本技术某些实施方式的应用程序的运行控制方法的流程示意图,在某些实施方式中,步骤01:整合多个不同版本的子应用程序为一个母应用程序,包括步骤:
86.011:分别将多个子应用程序工程编译打包成静态库并提供初始化入口;
87.012:提取多个子应用程序共同依赖的代码部分,并打包成动态库提供给静态库依赖;
88.013:构建一应用程序工程作为母应用程序;及
89.014:导入静态库及动态库至母应用程序。
90.通过实施步骤011、步骤012、步骤013及步骤014,可以将多个子应用程序整合至一个母应用程序中,且在需要使用任意一个子应用程序时,调用导入相应子应用程序静态库
的入口方法,就可以进入选择的子应用程序中。
91.请参阅图6,图6为本技术某些实施方式的应用程序的运行控制方法的流程示意图,在某些实施方式中,在实施步骤03后,应用程序的运行控制方法还包括步骤04:依据用户输入,重新确定被选择的身份标识,实施步骤04后,可以再次实施步骤03,即,再次运行与被选择的身份标识相关联的子应用程序。
92.具体地,可以在每个子应用程序的设置页面中提供切换版本的功能入口,用户点击该功能入口后将删除上一步已保存在本地的选择结果并重新选择,以供用户随时依据自己的使用需求切换不同的子应用程序使用。
93.综上,本技术实施方式的应用程序的运行控制方法至少可用于解决如下所述的技术问题:当一个应用程序产生重大的功能更新,或者产品业务形态发生重大改变时,可能会导致应用程序以及与之关联的服务器环境发生大规模调整或者重新开发的情况,此时对于同一个应用程序来说将有两个功能区别较大的版本以及服务器环境存在,如果该应用程序已经在应用市场上被大规模推广且在不同国家和地区已经被大量用户安装,应用程序开发者往往需要分国家或地区逐步部署新的服务器环境并投放新版本应用程序,以降低重大调整带来的未知风险所影响的范围。由于当前大部分主流应用市场均不支持按国家或地区投放不同版本的功能,支持分国家或地区投放不同版本需要开发者在应用市场中额外申请一个app id来分发新版本应用程序,这样会带来下列技术问题:
94.1.应用市场同时存在两个相同应用程序的不同版本,会对用户搜索下载时的选择造成困扰;
95.2.旧版本用户经引导下载新版本后,由于存在两个app id、包名(bundle id、package)的原因,将在一台移动终端上出现两个应用程序图标和入口,影响用户使用时的判断;
96.3.用户在使用旧版本应用程序时产生的本地数据无法在新版本上读取使用;
97.4.两个应用程序的存在不利于统计应用程序的活跃用户数、启动数、转化率等运营数据;
98.5.对于已投放的推广宣传(包含线上广告和线下物料),无法更换成新版本app id引导用户下载。
99.通过实施本技术实施方式的应用程序的运行控制方法,至少可以达到以下有益效果:
100.1.应用市场中同时只存在一个应用程序app id,不会因为新旧版本共存的过渡时期而产生多个app id;
101.2.开发者可以基于国家或地区动态配置用户进入不同版本的应用程序;
102.3.因在同一app id、包名(bundle id、package)的基础上升级,用户本地产生的用户数据不会在升级过程中丢失;
103.4.用户可以在同一个应用程序中平滑切换到新版本。
104.请参阅图7,图7为本技术某些实施方式的应用程序的运行控制装置10的模块示意图,运行控制装置10可用于实施本技术实施方式的运行控制方法,本技术的运行控制装置10包括整合模块11、获取模块12及运行模块13。整合模块11可用于实施步骤01,即,整体模块可用于整合多个不同版本的子应用程序为一个母应用程序,多个子应用程序分别与不同
的多个身份标识一一关联。获取模块12可用于实施步骤02,即,获取模块12可用于在母应用程序被启动时,获取用户输入以确定被选择的身份标识。运行模块13可用于实施步骤03,即,运行模块13可用于运行与被选择的身份标识相关联的子应用程序。
105.请继续参阅图7,在某些实施方式中,获取模块12在实施步骤02时,具体可用于实施步骤021、步骤022、步骤023及步骤024,即,获取模块12可用于在母应用程序被启动时,获取可供选择的子应用程序的版本数据;判断本地是否已存储用户在先对版本的选择结果;若是,获取与选择结果对应的身份标识;若否,依据版本数据展示可供选择的版本列表,获取与用户当前选择的版本相对应的身份标识。
106.请继续参阅图7,在某些实施方式中,获取模块12在实施步骤02时,还可用于实施步骤025,即,获取模块12可用于将用户当前选择的版本作为选择结果储存至本地。
107.请继续参阅图7,在某些实施方式中,获取模块12在实施步骤021时,具体可用于实施步骤0211、步骤0212、步骤0213及步骤0214,即,获取模块12可用于在母应用程序被启动时,向服务器请求获取子应用程序的版本数据;判断本地是否有缓存的版本数据;若否,等待并接收服务器返回的版本数据;及若是,在接收到服务器返回的版本数据前,以缓存的版本数据运行,在接收到服务器返回的版本数据后,以返回的版本数据更新缓存的版本数据。
108.请继续参阅图7,在某些实施方式中,整合模块11在实施步骤01时,可用于具体实施步骤011、步骤012、步骤013及步骤014,即,整合模块11可用于分别将多个子应用程序工程编译打包成静态库并提供初始化入口;提取多个子应用程序共同依赖的代码部分,并打包成动态库提供给静态库依赖;构建一应用程序工程作为母应用程序;导入静态库及动态库至母应用程序。
109.请参阅图8,图8为本技术某些实施方式的应用程序的运行控制装置10的模块示意图,在某些实施方式中,运行控制装置10还包括设置模块14,设置模块14可用于实施步骤04,即,设置模块14可用于依据用户输入,重新确定被选择的身份标识。在设置模块14实施步骤04后,运行模块13可用于再次实施步骤03。
110.需要说明的是,运行控制装置10实施本技术任一实施方式的运行控制方法时的实施细节及所达到的效果,可以参考上述对运行控制方法的描述,在此不再赘述。
111.此外,请参阅图9,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以上任一实施方式所述的运行控制方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-only memory,只读存储器)、ram(random access memory,随即存储器)、eprom(erasable programmable read-only memory,可擦写可编程只读存储器)、eeprom(electrically erasable programmable read-only memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
112.本技术方法实施例的内容均适用于本存储介质实施例,本存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同,具体请参见方法实施例中的说明,在此不再赘述。
113.此外,请参阅图10,本技术实施例还提供了一种计算机设备,本实施例所述的计算机设备可以是服务器、个人计算机以及网络设备等设备。所述计算机设备包括一个或多个
处理器、存储器、以及一个或多个计算机程序。其中一个或多个计算机程序被存储在存储器中并被配置为由一个或多个处理器执行。一个或多个计算机程序配置用于执行以上任一实施方式所述的运行控制方法。
114.在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
115.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
116.尽管上面已经示出和描述了本技术的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施方式进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1