对应用的处理方法、装置、终端及存储介质与流程

    专利2022-07-07  129


    本申请涉及互联网技术领域,具体涉及应用更新处理技术领域,尤其涉及一种对应用的处理方法、一种对应用的处理装置、一种终端及一种计算机存储介质。



    背景技术:

    随着智能手机等移动终端的大量普及应用,智能手机能够支持的应用越来越多,功能越来越强大,应用包括智能手机出厂时自带的系统应用和第三方应用,第三方应用为智能手机在应用商店或者应用市场中下载的应用。第三方应用的功能越来越丰富,包括支付类应用,游戏类应用,购物类应用,视频类应用,通讯类应用等,针对每个应用来说,能实现的应用功能还是比较固定的,如何让一个应用可以实现不同的功能,是需要进行研究的热点问题。



    技术实现要素:

    本申请实施例提供了一种对应用的处理方法、装置、终端及计算机存储介质,丰富了宿主应用的更新方式,提升了更新效率和更新的智能性。

    一方面,本申请实施例提供了一种对应用的处理方法,所述方法应用于安装有宿主应用的终端,所述方法包括:

    在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    执行所述寄生应用安装包生成寄生应用;

    在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    另一方面,本申请实施例提供了一种对应用的处理装置,安装有宿主应用,包括:

    下载单元,用于在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    生成单元,用于执行所述寄生应用安装包生成寄生应用;

    控制单元,用于在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    再一方面,本申请实施例提供了一种终端,所述终端包括输入设备和输出设备,所述终端还包括:

    处理器,适于实现一条或多条指令;以及,

    计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:

    在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    执行所述寄生应用安装包生成寄生应用;

    在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    再一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:

    在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    执行所述寄生应用安装包生成寄生应用;

    在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    本申请实施例提供的应用处理方法应用于安装有宿主应用的终端,在检测到针对宿主应用的更新操作时,会确定宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;从而可以执行寄生应用安装包生成寄生应用;在检测到对寄生应用的运行事件时,将在宿主应用上的用户操控指令发送给寄生应用,以根据用户操作指令对所述寄生应用进行控制。由此可见,在对宿主应用进行更新时,首先下载寄生应用的安装包,再根据安装包生成寄生应用,在运行寄生应用时,可以将对宿主应用的用户操控指令实现在寄生应用上,且寄生应用和宿主应用可以是不同的应用或者是相同应用的不同版本,因此丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    附图说明

    为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

    图1a是本申请实施例提供的一种宿主应用的架构示意图;

    图1b是宿主应用中各模块之间的交互流程示意图;

    图2是本申请实施例提供的一种对应用的处理方法的流程示意图;

    图3是本申请实施例提供的一种用户操作的参考示意图;

    图4是本申请另一实施例提供的另一种对应用的处理方法的流程示意图;

    图5是本申请实施例提供的一种对应用的处理装置的结构示意图;

    图6是本申请实施例提供的一种终端的结构示意图。

    具体实施方式

    下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

    目前,应用动态更新的主流技术包括补丁技术,插件技术,版本更新技术,以及采用reactnative(简称rn)框架对应用更新的技术等等。通过这些主流技术或多或少都存在一些缺点,例如:采用rn框架对应用更新的技术,在更新之后用户对应用的使用体验不高,且应用的响应效率也较多延迟,并且只能针对应用的某些模块使用rn框架,无法针对整个应用进行动态更新。又如:插件技术只能更新应用某个功能模块部分,同样无法对整个应用进行动态更新。再如:补丁技术只能对联网并允许安装补丁的用户的应用进行更新,无法保证更新能覆盖到所有用户,同时必须基于对更新之前的版本进行修改,不能修改首次启动的功能,也不能直接安装全新应用。再如:版本更新技术需要进行市场审核(例如应用商店的审核),效率低,且无法对应用功能做全面更新,如无法实现将应用a更新为应用b。可见,现有技术对应用的更新均较为片面,效率低且用户使用体验均较差。

    基于此,本申请实施例提出一种对应用的处理方案,该方案提出宿主应用和寄生应用的设计,所谓宿主应用是指能够为寄生应用提供运行环境的应用;所谓寄生应用是指从属于宿主应用,依赖于宿主应用所提供的运行环境而运行的应用。当需要对宿主应用进行动态更新时,可以根据运营需要或用户的实际需求,为宿主应用关联相应的寄生应用,通过运行寄生应用控制宿主应用表现出与寄生应用相同的功能和样式,从而使得在宿主应用中实现了寄生应用的功能,达到动态更新宿主应用的目的;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,此外,通过宿主应用和寄生应用的设计来对宿主应用动态更新,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性。

    本申请实施例可应用于安装有宿主应用的终端,此处的终端可以包括但不限于:智能手机、平板电脑、膝上计算机以及台式电脑等等。终端可根据实际的业务需求,调用该宿主应用配置的相应模块执行该对应用的处理方案。例如,宿主应用可包括但不限于:手游客户端、端游客户端等等,其中,手游客户端是指运行于移动终端中的游戏客户端,端游是指运行于pc(personalcomputer,个人计算机)端中的游戏客户端。宿主应用可以是指终端中的任何一个待更新的应用,例如,宿主应用可以是任何一个从互联网中直接下载并安装至终端中,能在终端的环境中正常运行的待更新的应用;再如,宿主应用可以是终端中的即时通信应用(如qq、微信)、内容交互应用(如微博)、图像处理应用(如美图秀秀)等等。

    图1a示出了宿主应用的结构示意图;如图1a所示,宿主应用集成了应用拉取模块101,寄生应用生成模块102和桥接模块103,其中,应用拉取模块101用于通过各种网络协议从互联网中拉取任何应用的安装包,此处的网络协议包括但不限于:http协议、ftp协议等等。从功能上看,应用拉取模块101相当于一个下载器,用于为宿主应用下载各种寄生应用的安装包;例如:应用拉取模块101可以通过http协议可以向宿主应用的后台服务器拉取某应用的apk安装包。寄生应用生成模块102相当于一个编辑器和/或执行器,用于通过编译执行或解释执行将应用拉取模块101所拉取到的寄生应用的安装包以生成寄生应用,此处生成的寄生应用是一个虚拟形态的应用,此处虚拟形态的应用是指未在终端的原生操作系统环境中安装,但却具备了安装后的功能和样式的应用。由于应用拉取模块101拉取的寄生应用的安装包不适用于在终端原生的操作系统环境中进行安装及运行,但却适用于在宿主应用所提供的运行环境中运行,如果直接安装应用拉取模块101所拉取的安装包,那么宿主应用与寄生应用则无法建立寄生关系,进而使得宿主应用无法利用寄生应用的相应功能;因此,拉取的原生安装包通过寄生应用生成模块102编译和解释执行之后,得到虚拟形态的应用,该虚拟形态的应用则可以被利用起来。具体的利用过程则通过桥接模块103实现,桥接模块103用于运行虚拟形态的寄生应用,虚拟形态的寄生应用通过桥接模块103的控制运行会产生和宿主应用不同的进程,即宿主应用和寄生应用对应不同的进程,这样可通过进程隔离来保证宿主应用和寄生应用均能被稳定运行,另外,桥接模块103可以将针对虚拟形态的寄生应用的指令(例如在寄生应用的交互界面中接收到的用户操作指令)转化成安卓原生指令,以帮助寄生应用识别用户操作指令;并通过进程间通信将寄生应用的功能和样式投影至宿主应用中,从而使宿主应用具备寄生应用的功能和效果,从而让用户无感知宿主应用与寄生应用之间的差异,在使用宿主应用的过程实际上是使用寄生应用的过程。

    图1b示出了宿主应用中各模块之间的交互流程示意图;如图1b所示,当检测到针对宿主应用100的更新操作时,先确定宿主应用100关联的寄生应用安装包;再调用应用拉取模块101来下载所述寄生应用的安装包;寄生应用安装包下载完毕之后,调用寄生应用生成模块102对安装包编译执行或解释执行后得到寄生应用;在检测到对寄生应用的运行事件(例如用户操作宿主应用的图标以启动动态更新后的宿主应用)时,调用桥接模块103来运行寄生应用,并将宿主应用100上的用户操作指令发送给寄生应用,实现对寄生应用和宿主应用的控制,在用户层面上,使用宿主应用100的过程实际上就是使用寄生应用的过程。

    宿主应用与寄生应用的关联关系可以通过以下多种方式建立:(1)根据运营需要,由宿主应用的后台服务器随机为宿主应用关联一个寄生应用;(2)宿主应用的后台服务器统计用户对宿主应用的使用习惯,为宿主应用关联一个符合用户使用习惯的寄生应用;例如,用户对于音视频应用的使用频率较低,而对即时通信应用的使用需求较高,因此可以将音视频应用关联一个即时通信应用,如此,当音视频应用被动态更新之后,用户在打开音视频应用后可以使用即时通信功能,省去了去重新下载安装一个即时通信应用的过程。本申请实施例中,用户每次使用宿主应用,可能看到的宿主应用的不同功能或不同界面样式,这是由于宿主应用与寄生应用的关联关系并非固定的,同一宿主应用的多次动态更新,可能会使得宿主应用的部分或全部功能发生变化。

    另外,宿主应用和寄生应用可以是版本不同的相同应用,这样当宿主应用被动态更新后,宿主应用的部分功能得以更新,例如:宿主应用为某音视频应用1.0版本,寄生应用安装包为该音视频应用的2.0版本的安装包,那么当宿主应用进行动态更新之后,其实质就是将该音视频应用由1.0版本更新至2.0版本。宿主应用和寄生应用也可以是不同的应用,此时可以把宿主应用看成是一个用于对寄生应用进行伪装的壳子,或者是一个可以运行寄生应用的系统;这样当宿主应用被动态更新后,宿主应用的全部功能得以更新改变,例如:宿主应用为音视频应用,寄生应用为即时通信应用,当对宿主应用进行动态更新后,实际上就是将音视频应用的功能替换为即时通信应用的功能,而在产品体现上,用户在终端中看到的仍是音视频应用的图标,当启动该音视频频应用后,看到的是即时通信应用的功能界面,这样达到将一个应用更新替换为另一个应用的目的。

    本申请实施所提出的对应用的处理方案,设计了宿主应用与寄生应用的架构,并且在宿主应用中集成应用拉取模块、寄生应用生成模块以及桥接模块;通过宿主应用中各模块的交互实现了对寄生应用的下载,虚拟形态的生成及运行,使宿主应用成为寄生应用的运行载体,进而采用寄生应用的功能来对宿主应用进行动态更新,丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    基于上述的描述,本申请实施例提出一种对应用的处理方法,该对应用的处理方法可以由安装有宿主应用的终端执行。请参见图2,该对应用的处理方法可包括以下步骤s201-s203:

    s201,在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包。

    针对所述宿主应用的更新操作可以包括:启动宿主应用的操作,或者在宿主应用提供的应用界面中对更新标识所执行的触发操作。具体实现中,在启动宿主应用并使用宿主应用的过程中,宿主应用可以在应用界面中显示一个更新标识,当用户对该更新标识进行触发操作(例如点击更新标识,或选中更新标识)时,发起针对宿主应用的更新操作。宿主应用关联的寄生应用可以是根据运行需要,由宿主应用的后台服务器随机为宿主应用关联的一个寄生应用,例如,宿主应用为音视频应用,后台服务器为该音视频应用随机关联的寄生应用为即时通信应用,又或者,宿主应用关联的寄生应用可以是宿主应用的后台服务器对用户针对宿主应用的使用习惯进行统计之后,确定的可以符合用户使用习惯的寄生应用,例如,宿主应用为音视频应用,但是用户对于音视频应用的使用频率减低,对即时通信应用的使用需求较高,因此可以选择将即时通信应用作为将该音视频应用关联的寄生应用。

    步骤s201中,可以调用宿主应用中的应用拉取模块来下载寄生应用的安装包,具体可以从互联网中下载寄生应用的安装包;或者从寄生应用的官方渠道(例如应用商店、官方网站)中下载寄生应用的安装包。分析寄生应用的安装确定寄生应用和宿主应用是否为相同的应用;例如:若寄生应用的标识与宿主应用的标识相同,或者寄生应用的名称与宿主应用的名称相同等等,则认为寄生应用与宿主应用属于相同的应用。在此情况下,可进一步比对寄生应用的版本号与宿主应用的版本号,若二者属于版本不同的相同应用,则对宿主应用执行更新操作,可以使宿主应用的部分功能得以更新,例如:宿主应用为音视频应用的1.0版本,寄生应用安装包为该音视频应用的2.0版本的安装包,宿主应用更新完成后,表现为该音视频应用由1.0版本更新为了2.0版本。若分析寄生应用的安装包确定寄生应用和宿主应用属于不同的应用,例如:若寄生应用的标识与宿主应用的标识不同,或者寄生应用的名称与宿主应用的名称不同,或者寄生应用的功能描述与宿主应用的功能描述完全不同等等,则认为寄生应用与宿主应用属于不同的应用。在此情况下,宿主应用可以作为一个用于伪装寄生应用的壳子,或者用于运行寄生应用的系统,对宿主应用执行更新操作,可是使宿主应用的全部功能得以更新,例如:宿主应用为音视频应用,寄生应用为即时通信应用,宿主应用更新完成后,表现为该音视频应用的功能替换为即时通信应用的功能。

    s202,执行所述寄生应用安装包生成寄生应用。

    步骤s202可以通过调用宿主应用的寄生应用生成模块来执行。通过寄生应用生成模块编译执行或解释执行寄生应用安装包后会生成寄生应用,此处生成的寄生应用是一个虚拟形态的应用。

    s203,在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    步骤s203可以通过调用宿主应用的桥接模块来执行。对寄生应用的运行事件可包括但不限于:在生成寄生应用之后检测到的针对宿主应用的启动事件;或者针对宿主应用(寄生应用)的某功能发起的请求事件,例如前述例子中:宿主应用由音视频应用的功能更新替换为即时通信应用的功能,而检测到即时通信聊天请求事件时,确定检测到对寄生应用的运行事件。宿主应用的桥接模块控制运行虚拟形态的寄生应用时会在终端中对应生成第一进程,同时控制运行宿主应用会在终端中对应生成第二进程,这样可以通过进程隔离来保证寄生应用和宿主应用均可以被稳定运行。同时,桥接模块会建立第一进程和第一进程之间的数据接口,该数据接口用于实现宿主应用和寄生应用之间的数据传输,例如,桥接模块通过数据接口可以将寄生应用的应用界面投影到宿主应用,从而,宿主应用可以呈现出寄生应用的应用界面,因此用户在使用宿主应用时,看到的是寄生应用的应用界面,用户在打开宿主应用音视频应用后,看到的是寄生应用即时通信应用的应用界面。

    桥接模块可以将针对虚拟形态的寄生应用在交互界面中收到的用户操作指令转化成安卓原生指令,以帮助寄生应用识别用户操作指令,并通过第一进程和第二进程之间的数据接口将寄生应用的功能和样式投影到宿主应用中,从而使宿主应用具备寄生应用的功能和效果,从而让用户无感知宿主应用和寄生应用之间的差异,用户使用宿主应用的过程实际上是使用寄生应用的过程,因为用户在终端桌面上看到的仍然是宿主应用的应用图标。在终端启动宿主应用后,会马上启动并运行寄生应用,在检测到针对寄生应用的运行事件时,如果用户在宿主应用上实施用户操作指令,桥接模块会将用户操作指令发送给寄生应用,同时将该用户操作指令转化成安卓原生指令,寄生应用识别该用户操作指令后可进行响应。

    可选的,步骤s203的具体实施方式还可以是:在第二进程内检测到来自宿主应用的用户操作指令时,将所述用户操作指令通过数据接口发送给所述第一进程;将处理结果投影到宿主应用,以通过宿主应用向用户反馈处理结果,处理结果是所述寄生应用对应的第一进程响应所述用户操作指令后得到的。由于宿主应用呈现的是寄生应用的应用界面,因此用户对宿主应用实施用户操作指令时,该用户操作指令实际上是针对寄生应用的,宿主应用对应的第二进程检测到用户操作指令后,通过调用桥接模块将该用户操作指令通过数据接口发送给第一进程对应的寄生应用,寄生应用在识别到该用户操作指令后对该用户操作指令进行响应,得到一个处理结果,再由第一进程会将该处理结果反馈给第二进程,此时由桥接模块将该处理结果投影到宿主应用,从而,实现了通过宿主应用实现寄生应用的功能。

    参考如图3所示的用户操作的参考示意图,用户在使用宿主应用的过程中,终端根据用户行为(例如点击或者滑动应用界面),获取到用户操作指令,宿主应用通过桥接模块将该用户操作指令发送给寄生应用,寄生应用根据用户操作指令得到处理结果之后,再通过桥接模块将该处理结果反馈给宿主应用,从而使得用户在宿主应用的应用界面上可以查看到处理结果。此外,寄生应用生成模块向应用拉取模块请求寄生应用安装包时,应用拉取模块在确定宿主应用关联的寄生应用安装包后,向宿主应用的后台服务器中拉取寄生应用安装包,并将寄生应用安装包发送给寄生应用生成模块,由寄生应用生成模块通过对寄生应用安装包编译执行或解释执行后生虚拟形态的寄生应用,再由桥接模块产生一个新的进程来运行寄生应用,以实现寄生应用和宿主应用之间的进程隔离,保证宿主应用和寄生应用均被稳定运行。

    可见,在具体实施过程中,本申请实施例提供的对应用的处理方法,可以帮助应用供应商实现对宿主应用的部分或全部功能进行更新,提高应用的动态更换效率,同时还能够省去渠道方审核的过程。例如,宿主应用为音视频应用,该音视频现有版本为版本a,应用供应商想把该音视频应用升级到版本b,如果版本b和版本a之间的差异很大,目前除了发版本之外没有其他的更新技术,但是通过本申请实施例提供的对应用的处理方法,可以帮助应用供应商节省渠道方对该音视频应用的版本b的审核时间,通过将版本a的音视频应用作为宿主应用,将版本b的音视频应用作为寄生应用,实现将该音视频应用由版本a更新为版本b。又例如,某应用供应商发布了10款视频应用,在对这10款视频应用的用户数据分别进行分析后,发现视频应用a的用户数量最多,但是其它9款视频应用还是有少许数量的用户在使用,通过本申请实施例提供的对应用的处理方法,应用供应商可以通过控制其它9款视频应用的后台服务器,将其它9款视频应用的寄生应用安装包更新为视频应用a的安装包,从而实现将其它9款视频应用更新为视频应用a,如此可以帮助该应用供应商为视频应用a提升流量和用户数量,同时为用户省去了删除现有的视频应用,再去下载视频应用a的过程。

    本申请实施例提供的应用处理方法应用于安装在终端中的宿主应用,该宿主应用中配置了应用拉取模块、寄生应用生成模块以及桥接模块,在检测到针对宿主应用的更新操作时,会确定宿主应用关联的寄生应用安装包,并调用应用拉取模块下载所述寄生应用安装包;从而可以调用寄生应用生成模块执行寄生应用安装包生成寄生应用;在检测到对寄生应用的运行事件时,调用桥接模块将在宿主应用上的用户操控指令发送给寄生应用,以根据用户操作指令对所述寄生应用进行控制。由此可见,通过宿主应用中各模块的交互实现了对寄生应用的下载,虚拟形态的生成及运行,使宿主应用成为寄生应用的运行载体,进而采用寄生应用的功能来对宿主应用进行动态更新,丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    请参见图4,是本申请实施例提供的另一种对应用的处理方法的流程示意图。该对应用的处理方法可以由安装有宿主应用的终端中执行。如图4所示,该对应用的处理方法可包括以下步骤s401-s407:

    s401,在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包。

    s402,执行所述寄生应用安装包生成寄生应用。

    s403,检测所述终端中已安装的各个终端应用的应用标识。

    s404,若检测到所述应用标识中存在与所述寄生应用的应用标识相同的目标应用标识,则确定所述目标应用标识所指示的终端应用的目标用户数据。

    终端为已安装的各个终端应用都配置了一个应用标识,通过应用标识可以确定终端应用的身份,如果检测到寄生应用的应用标识和终端已安装的某个终端应用的应用标识相同时,将该应用标识确定为目标应用标识,此时可以确定目标应用标识所指示的终端应用的目标应用数据,并在确定目标应用数据之后,可以执行将寄生应用和目标应用标识所指示的终端之间进行数据共享处理,例如,寄生应用的应用标识为即时通信应用a的应用标识,终端已经下载有即时通信应用a,则可以将即时通信应用a的目标用户数据共享给寄生应用,如此,用户在使用寄生应用时或者在使用即时通信应用a时,寄生应用和即时通信应用a之间可以进行数据共享。

    s405,根据确定的所述目标用户数据,在所述寄生应用和所述目标应用标识所指示的终端应用之间进行数据共享处理。

    通过执行将寄生应用和目标应用标识所指示的终端之间进行数据共享处理,可以帮助用户提升在使用寄生应用时的体验。例如,寄生应用为即时通信应用a,但是在终端已安装终端应用的应用标识中检测到有即时通信应用a的应用标识,表明终端已经下载了即时通信应用a,相当于此时终端中有两个即时通信应用a,一个是以寄生应用的形式存在的即时通信应用a,一个是用户直接从应用商店下载到终端的即时通信应用a,并且两个即时通信应用a具有相同的功能和样式,此时可以获取终端已下载的即时通信应用a的部分或全部用户数据,并将该部分或全部用户数据跟新到以寄生应用形式存在的即时通信应用a,从而在用户使用以寄生应用形式存在的即时通信应用a时,也可以使用到这部分用户数据。

    相应的,步骤s405可包括以下步骤s11-s12:

    s11,获取所述目标应用标识所指示的终端应用中的第一用户特征数据,所述第一用户特征数据包括用户对所述目标应用标识所指示的终端应用进行配置产生的数据以及用户使用所述目标应用标识所指示的终端应用过程中产生的数据;

    s12,将所述目标应用标识所指示的终端应用的第一用户特征数据更新到所述寄生应用;

    在对寄生应用和目标应用标识所指示的终端应用之间进行数据共享处理的过程中,目标用户数据可以包括第一用户特征数据,第一用户特征数据为目标应用标识所指示的终端应用产生的数据,例如,可以包括用户对目标应用标识所指示的终端应用进行配置产生的数据,以及用户使用目标应用标识所指示的终端应用过程中产生的使用数据,第一用户特征数据更新到寄生应用中,有利于帮助用户在使用寄生应用时,省去对寄生应用再次进行配置的过程,以及提高用户使用寄生应用的便捷性。

    相应的,步骤s405还可包括以下步骤s21-s22:

    s21,获取用户在使用所述寄生应用过程中产生的第二用户特征数据;

    s22,将所述第二用户特征数据更新到所述目标应用。

    在对寄生应用和目标应用标识所指示的终端应用之间进行数据共享处理的过程中,目标用户数据还可以包括第二用户特征数据,第二用户特征数据为用户在使用寄生应用过程中产生的数据,例如,用户在使用寄生应用即时通信应用a时产生的聊天记录,产生的朋友圈记录等,将这些第二用户特征数据同步更新到终端已下载的即时通信应用a,同时在关闭了宿主应用后,由于寄生应用也同步关闭了,此时可以清除寄生应用产生的这些第二用户特征数据,因为这部分数据已经同步到终端已下载的即时通信应用a当中,无需重复保存,可避免数据堆积。

    s406,在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    宿主应用的桥接模块用于运行虚拟形态的寄生应用,虚拟形态的寄生应用通过桥接模块的控制运行会产生和宿主应用不同的进程,即宿主应用和寄生应用对应不同的进程,这样可通过进程隔离来保证宿主应用和寄生应用均能被稳定运行,另外,桥接模块可以将针对虚拟形态的寄生应用的指令(例如在寄生应用的交互界面中接收到的用户操作指令)转化成安卓原生指令,以帮助寄生应用识别用户操作指令;并通过进程间通信将寄生应用的功能和样式投影至宿主应用中,从而使宿主应用具备寄生应用的功能和效果,从而让用户无感知宿主应用与寄生应用之间的差异,在使用宿主应用的过程实际上是使用寄生应用的过程。

    寄生应用的运行对应产生第一进程,同时宿主应用的运行对应产生第二进程,通过第一进程和第二进程之间的数据接口可以将寄生应用投影到宿主应用上,使宿主应用呈现寄生应用的形态,同时,用户和寄生应用之间交互时产生的用户操作指令,也会投影到寄生应用上,寄生应用响应用户操作指令后将产生的处理结果投影到宿主应用上,从而,让用户无感知宿主应用和寄生应用的差别,使宿主应用实现了寄生应用的功能和样式。

    本申请实施例提供的应用处理方法应用于安装在终端中的宿主应用,该宿主应用中配置了应用拉取模块、寄生应用生成模块以及桥接模块,在检测到针对宿主应用的更新操作时,会确定宿主应用关联的寄生应用安装包,并调用应用拉取模块下载所述寄生应用安装包;从而可以调用寄生应用生成模块执行寄生应用安装包生成寄生应用;在检测到对寄生应用的运行事件时,调用桥接模块将在宿主应用上的用户操控指令发送给寄生应用,以根据用户操作指令对所述寄生应用进行控制。由此可见,在对宿主应用进行更新时,可以通过应用拉取模块来下载寄生应用的安装包,寄生应用生成模块再根据安装包生成寄生应用,在运行寄生应用时,通过桥接模块可以将对宿主应用的用户操控指令实现在寄生应用上,且寄生应用和宿主应用可以是不同的应用或者是相同应用的不同版本,因此丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    基于上述对应用的处理方法实施例的描述,本申请实施例还公开了一种对应用的处理装置,所述对应用的处理装置可以是运行于终端中的一个计算机程序(包括程序代码)。该对应用的处理装置可以执行图2或图4所示的方法。请参见图5,所述对应用的处理装置可以运行如下单元:

    下载单元101,用于在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    生成单元102,用于执行所述寄生应用安装包生成寄生应用;

    控制单元103,用于在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    在一种实施方式中,控制单元103,具体用于:在检测到对所述寄生应用的运行事件时,执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程,所述第一进程由所述桥接模块执行。

    再一种实施方式中,控制单元103在执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程之后,具体用于:建立所述第一进程和所述第二进程之间的数据接口;其中,通过所述数据接口将所述寄生应用的应用界面投影到所述宿主应用,以使所述宿主应用呈现所述寄生应用的应用界面。

    再一种实施方式中,控制单元103在将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制时,具体用于:在所述第二进程内检测到来自所述宿主应用的用户操作指令时,将所述用户操作指令通过所述数据接口发送给所述第一进程;将处理结果投影到所述宿主应用,以通过所述宿主应用向用户反馈所述处理结果,所述处理结果是所述寄生应用对应的第一进程响应所述用户操作指令后得到的。

    再一种实施方式中,下载单元101在确定所述宿主应用关联的寄生应用安装包时,具体用于:确定所述宿主应用的版本信息,并根据所述版本信息确定所述宿主应用是否存在应用更新数据包;若是,则将确定的所述应用更新数据包作为寄生应用安装包。

    再一种实施方式中,生成单元102在所述执行所述寄生应用安装包生成寄生应用之后,具体用于:检测所述终端中已安装的各个终端应用的应用标识;若检测到所述应用标识中存在与所述寄生应用的应用标识相同的目标应用标识,则确定所述目标应用标识所指示的终端应用的目标用户数据;根据确定的所述目标用户数据,在所述寄生应用和所述目标应用标识所指示的终端应用之间进行数据共享处理。

    再一种实施方式中,控制单元102,具体用于:在关闭所述宿主应用时,清除所述寄生应用产生的数据。

    根据本申请的一个实施例,图2或图4所示的方法所涉及的各个步骤均可以是由图5所示的对应用的处理装置中的各个单元来执行的。例如,图2中所示的步骤s201可以由图5中所示的下载单元101来执行,步骤s202可以由图5中所示的生成单元102来执行,步骤s203可以由图5中所示的控制单元103来执行;又如,图4中所示的步骤s201可以由图5中所示的下载单元101来执行,步骤s402-s405可以由图5中所示的生成单元102来执行,步骤s406可以由图5中所示的控制单元103来执行。

    根据本申请的另一个实施例,图5所示的对应用的处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于对应用的处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。

    根据本申请的另一个实施例,可以通过在包括中央处理单元(cpu)、随机存取存储介质(ram)、只读存储介质(rom)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图4中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5中所示的对应用的处理装置设备,以及来实现本申请实施例的对应用的处理方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。

    本申请实施例提供的应用处理方法应用于安装在终端中的宿主应用,该宿主应用中配置了应用拉取模块、寄生应用生成模块以及桥接模块,在检测到针对宿主应用的更新操作时,会确定宿主应用关联的寄生应用安装包,并调用应用拉取模块下载所述寄生应用安装包;从而可以调用寄生应用生成模块执行寄生应用安装包生成寄生应用;在检测到对寄生应用的运行事件时,调用桥接模块将在宿主应用上的用户操控指令发送给寄生应用,以根据用户操作指令对所述寄生应用进行控制。由此可见,在对宿主应用进行更新时,可以通过应用拉取模块来下载寄生应用的安装包,寄生应用生成模块再根据安装包生成寄生应用,在运行寄生应用时,通过桥接模块可以将对宿主应用的用户操控指令实现在寄生应用上,且寄生应用和宿主应用可以是不同的应用或者是相同应用的不同版本,因此丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    基于上述方法实施例以及装置实施例的描述,本申请实施例还提供一种终端。请参见图6,该终端至少包括处理器201、输入设备202、输出设备203以及计算机存储介质204。其中,终端内的处理器201、输入设备202、输出设备203以及计算机存储介质204可通过总线或其他方式连接。

    计算机存储介质204可以存储在终端的存储器中,所述计算机存储介质204用于存储计算机程序,所述计算机程序包括程序指令,所述处理器201用于执行所述计算机存储介质204存储的程序指令。处理器201(或称cpu(centralprocessingunit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本申请实施例所述的处理器201可以用于进行一系列的对应用的处理,包括:在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;执行所述寄生应用安装包生成寄生应用;在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制,等等。

    本申请实施例还提供了一种计算机存储介质(memory),所述计算机存储介质是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器201加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。

    在一个实施例中,可由处理器201加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关对应用的处理实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器201加载并执行如下步骤:

    在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    执行所述寄生应用安装包生成寄生应用;

    在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    再一种实施方式中,所述一条或多条指令还可由处理器201加载并具体执行:在检测到对所述寄生应用的运行事件时,执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程。

    再一种实施方式中,在所述执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程之后,所述一条或多条指令还可由处理器201加载并具体执行:建立所述第一进程和所述第二进程之间的数据接口;其中,所述桥接模块通过所述数据接口将所述寄生应用的应用界面投影到所述宿主应用,以使所述宿主应用呈现所述寄生应用的应用界面。

    再一种实施方式中,在所述将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制时,所述一条或多条指令还可由处理器201加载并具体执行:在所述第二进程内检测到来自所述宿主应用的用户操作指令时,将所述用户操作指令通过所述数据接口发送给所述第一进程;将处理结果投影到所述宿主应用,以通过所述宿主应用向用户反馈所述处理结果,所述处理结果是所述寄生应用对应的第一进程响应所述用户操作指令后得到的。

    再一种实施方式中,在所述确定所述宿主应用关联的寄生应用安装包时,所述一条或多条指令还可由处理器201加载并具体执行:确定所述宿主应用的版本信息,并根据所述版本信息确定所述宿主应用是否存在应用更新数据包;若是,则将确定的所述应用更新数据包作为寄生应用安装包。

    再一种实施方式中,在所述执行所述寄生应用安装包生成寄生应用之后,所述一条或多条指令还可由处理器201加载并具体执行:检测所述终端中已安装的各个终端应用的应用标识;若检测到所述应用标识中存在与所述寄生应用的应用标识相同的目标应用标识,则确定所述目标应用标识所指示的终端应用的目标用户数据;根据确定的所述目标用户数据,在所述寄生应用和所述目标应用标识所指示的终端应用之间进行数据共享处理。

    再一种实施方式中,所述一条或多条指令还可由处理器201加载并具体执行:在关闭所述宿主应用时,清除所述寄生应用产生的数据。

    本申请实施例提供的应用处理方法应用于安装在终端中的宿主应用,该宿主应用中配置了应用拉取模块、寄生应用生成模块以及桥接模块,在检测到针对宿主应用的更新操作时,会确定宿主应用关联的寄生应用安装包,并调用应用拉取模块下载所述寄生应用安装包;从而可以调用寄生应用生成模块执行寄生应用安装包生成寄生应用;在检测到对寄生应用的运行事件时,调用桥接模块将在宿主应用上的用户操控指令发送给寄生应用,以根据用户操作指令对所述寄生应用进行控制。由此可见,在对宿主应用进行更新时,可以通过应用拉取模块来下载寄生应用的安装包,寄生应用生成模块再根据安装包生成寄生应用,在运行寄生应用时,通过桥接模块可以将对宿主应用的用户操控指令实现在寄生应用上,且寄生应用和宿主应用可以是不同的应用或者是相同应用的不同版本,因此丰富了宿主应用的更新方式,既能够对宿主应用的部分功能进行更新,也可以对宿主应用的整体功能进行更新,提升了应用更新的灵活性;并且,宿主应用的表现行为与寄生应用完全一致,这保证了用户使用的体验性,提升了更新效率和更新的智能性。

    以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。


    技术特征:

    1.一种对应用的处理方法,其特征在于,所述方法应用于安装有宿主应用的终端,所述方法包括:

    在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    执行所述寄生应用安装包生成寄生应用;

    在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    2.如权利要求1所述的方法,其特征在于,所述方法还包括:

    在检测到对所述寄生应用的运行事件时,执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程。

    3.如权利要求2所述的方法,其特征在于,所述执行所述寄生应用对应的第一进程,并执行所述宿主应用对应的第二进程之后,所述方法还包括:

    建立所述第一进程和所述第二进程之间的数据接口;

    其中,通过所述数据接口将所述寄生应用的应用界面投影到所述宿主应用,以使所述宿主应用呈现所述寄生应用的应用界面。

    4.如权利要求1-3任一项所述的方法,其特征在于,所述将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制,包括:

    在所述第二进程内检测到来自所述宿主应用的用户操作指令时,将所述用户操作指令通过所述数据接口发送给所述第一进程;

    将处理结果投影到所述宿主应用,以通过所述宿主应用向用户反馈所述处理结果,所述处理结果是所述寄生应用对应的第一进程响应所述用户操作指令后得到的。

    5.如权利要求1所述的方法,其特征在于,所述确定所述宿主应用关联的寄生应用安装包,包括:

    确定所述宿主应用的版本信息,并根据所述版本信息确定所述宿主应用是否存在应用更新数据包;

    若是,则将确定的所述应用更新数据包作为寄生应用安装包。

    6.如权利要求1所述的方法,其特征在于,所述执行所述寄生应用安装包生成寄生应用之后,所述方法还包括:

    检测所述终端中已安装的各个终端应用的应用标识;

    若检测到所述应用标识中存在与所述寄生应用的应用标识相同的目标应用标识,则确定所述目标应用标识所指示的终端应用的目标用户数据;

    根据确定的所述目标用户数据,在所述寄生应用和所述目标应用标识所指示的终端应用之间进行数据共享处理。

    7.如权利要求6所述的方法,其特征在于,所述方法还包括:

    在关闭所述宿主应用时,清除所述寄生应用产生的数据。

    8.一种对应用的处理装置,其特征在于,安装有宿主应用,包括:

    下载单元,用于在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;

    生成单元,用于执行所述寄生应用安装包生成寄生应用;

    控制单元,用于在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。

    9.一种智能终端,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的多媒体播放方法。

    10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序指令,所述计算机程序指令适于由处理器加载并执行如权利要求1-7任一项所述的多媒体播放方法。

    技术总结
    本申请实施例公开了一种对应用的处理方法、装置、终端及介质,其中方法包括:在检测到针对所述宿主应用的更新操作时,确定所述宿主应用关联的寄生应用安装包,并下载所述寄生应用安装包;执行所述寄生应用安装包生成寄生应用;在检测到对所述寄生应用的运行事件时,将在所述宿主应用上的用户操控指令发送给所述寄生应用,以根据所述用户操作指令对所述寄生应用进行控制。本申请实施例丰富了宿主应用的更新方式,提升了更新效率和更新的智能性。

    技术研发人员:魏路
    受保护的技术使用者:腾讯科技(深圳)有限公司
    技术研发日:2019.08.21
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-7201.html

    最新回复(0)