一种应用程序的启动方法、装置及存储介质与流程

文档序号:18795978发布日期:2019-09-29 19:39阅读:151来源:国知局
一种应用程序的启动方法、装置及存储介质与流程

本申请涉及信息技术领域,尤其涉及一种应用程序的启动方法、装置及存储介质。



背景技术:

目前很多应用程序(app:application)的功能越来越复杂,再加上热补丁、插件化、智能推荐、离线包、动态广告、启动引导等技术方案的普及,应用程序的启动及其部分功能的使用都会涉及比较复杂的逻辑,导致应用程序的启动及其部分功能使用的等待时间比较长。

对于应用程序的用户而言,尤其是等待指数有限的用户,遇到等待时间较长的情况,会直接弃用对应的应用程序,造成了用户的流失。



技术实现要素:

本申请的实施例提供了一种应用程序的启动方法,包括:获取所述应用程序的属性信息和/或操作信息;响应于对于应用程序的启动操作,根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数;根据所述用户的等待指数确定启动模式,其中,所述应用程序对应多于一个的启动模式,每个启动模式对应一个所述应用程序中的功能模块集合,不同启动模式对应的所述功能模块集合不同;以及根据所述应用程序中所述确定的所述启动模式,启动所述启动模式对应的所述功能模块集合。

本申请的实施例还提供了一种应用程序的启动装置,包括:获取模块,获取所述应用程序的属性信息和/或操作信息;确定模块,响应于对于应用程序的启动操作,根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数;所述确定模块,进一步根据所述用户的等待指数确定启动模式,其中,所述应用程序对应多于一个的启动模式,每个启动模式对应一个所述应用程序中的功能模块集合,不同启动模式对应的所述功能模块集合不同;以及启动模块,根据所述应用程序中所述确定的所述启动模式,启动所述启动模式对应的所述功能模块集合。

在一些实例中,所述启动操作包括:用于初始化所述应用程序的启动操作、用于使后台运行或者挂起的所述应用程序在前台运行的启动操作中的至少一者。

在一些实例中,所述应用程序的启动装置进一步包括:建立模块,建立用户等待指数模型,所述用户等待指数模型包括:对应于应用程序的属性信息和/或操作信息的多个参数、根据所述多个参数上的分值确定所述等待指数的计算策略;所述获取模块,进一步获取所述用户等待指数模型中所述多个参数各自对应的所述应用程序的属性信息和/或操作信息;所述确定模块,进一步将所获取的所述多个参数各自对应的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据所述输入和所述策略计算得到所述等待指数并输出;及将所述用户等待指数模型输出的所述等待指数作为所述用户对于所述应用程序的所述等待指数。

在一些实例中,当所述多个参数中一个或多个参数对应的所述应用程序的属性信息和/或操作信息发生更新时,所述确定模块,进一步将更新后的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据发生更新后的所述输入和所述策略计算得到所述等待指数并输出。

在一些实例中,当所述应用程序的属性信息包括程序类型时,所述获取模块,进一步根据所述应用程序的标识获取所述应用程序的程序类型;所述确定模块,进一步根据已建立的各个程序类型与分值的对应关系,确定所述应用程序的所述程序类型对应的分值;根据所述程序类型对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的属性信息包括是否存在与所述应用程序相同或相似的应用程序的指示信息时,所述获取模块,进一步获取应用程序安装列表;查询所述应用程序安装列表中是否存在与所述应用程序的类型相同或相似的应用程序;以及根据所述查询的结果生成所述指示信息;所述确定模块,进一步根据已建立好的所述指示信息与分值的对应关系,确定所述指示信息所对应的分值;根据所述指示信息对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式时,所述获取模块,进一步响应于对于应用程序的启动操作,获取与所述启动操作对应的所述应用程序的启动方式,所述启动方式包括点击所述应用程序的桌面图标的启动方式、点击所述应用程序提供的入口的启动方式以及点击其它应用程序提供的所述应用程序的入口的启动方式中的至少两者;所述确定模块,进一步根据已建立的各个启动方式与分值的对应关系,确定所述启动方式所对应的分值;根据所述启动方式对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括指定类型操作的操作信息时,所述获取模块,进一步监听并记录所述用户的用户标识对应的在启动所述应用程序前所述指定类型操作的操作信息;所述确定模块,进一步根据记录的所述操作信息,确定在启动所述应用程序前的预定时间段内所述用户标识对应的所述指定类型操作的操作次数;根据已建立好的操作次数范围与分值的对应关系,确定所述操作次数所在的操作次数范围,并确定所述操作次数所对应的分值;根据所述操作次数对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括所述用户在所述应用程序的启动过程中退出所述应用程序的操作信息时,所述获取模块,进一步监听并记录所述用户的用户标识对应的退出所述应用程序的操作信息;所述确定模块,进一步设置定时器时长为预设时间长度;当所述定时器超时时,根据所述预设时间长度内的所述操作信息,确定所述预设时间长度内所述用户标识对应的在所述应用程序的启动过程中退出所述应用程序的次数并将其作为所述用户的流失次数;根据已建立的用户流失次数和分值的对应关系,确定所述确定的所述用户的流失次数对应的分值;及根据所述流失次数对应的所述分值确定所述等待指数。

在一些实例中,所述确定模块进一步设置计数器的初始值;在所述应用程序启动的过程中,每当监听到所述用户对应的用户标识退出所述应用程序的操作信息,则所述计数器加1;当所述定时器超时时,获取所述计数器的当前值,并将所述计数器的当前值作为所述用户的流失次数,并重置所述计数器为所述初始值。

在一些实例中,所述启动模式包括:第一模式、第二模式以及第三模式中的至少两者;其中,所述第二模式对应的功能模块集合包含于所述第一模式对应的功能模块集合,所述第三模式对应的功能模块集合包含于所述第二模式对应的功能模块集合;当所述用户的等待指数大于或等于第二阈值时,所述确定模块,进一步确定以第一模式启动;所述启动模块,进一步启动所述第一模式对应的所述功能模块集合;当所述用户的等待指数小于所述第二阈值时,所述确定模块,进一步确定以第二模式和/或第三模式启动;所述启动模块,进一步启动所述第二模式对应的所述功能模块集合和/或第三模式对应的所述功能模块集合。

在一些实例中,当所述用户的等待指数大于或等于所述第三阈值且小于所述第二阈值时,所述确定模块,进一步确定以第二模式启动;所述启动模块,进一步启动所述第二模式对应的所述功能模块集合;当所述用户的等待指数小于所述第三阈值时,所述确定模块,进一步确定以第三模式启动;所述启动模块,进一步启动所述第三模式对应的所述功能模块集合。

本申请实施例还提供了一种存储介质,存储有可读指令,可以使至少一个处理器执行上述应用程序的启动方法。

本申请提供的技术方案,一方面提供了用户等待指数模型可以计算不同用户对不同应用程序的等待指数,为应用程序的优化提供了一个新的可参考的参数。另一方面针对不同用户采用不同的启动模式,实现了差异化的启动,满足了不同等待指数的用户,给用户以更好的体验,避免了整体优化存在的针对性弱的问题,提高了应用程序的效率,节省了硬件资源。

附图说明

图1a为本申请一实施例的系统结构示意图;

图1b为本申请一实施例的实现应用程序的启动方法的启动功能模块和该应用程序的结构图;

图2为本申请一实施例的一种应用程序的启动方法的流程图;

图3为本申请一实施例的用户等待指数模型的一个示意图;

图4为本申请一实施例所述的三种不同启动方式的示例;

图5为本申请一实施例的一种应用程序的启动方法的流程图;

图6为本申请一实施例的应用程序的启动装置的结构示意图;

图7为本申请一实施例的用户终端的硬件结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

为了描述上的简洁和直观,下文通过描述若干代表性的实施例来对本发明的方案进行阐述。实施例中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据……”是指“至少根据……,但不限于仅根据……”。下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。

如前所述,对于应用程序的用户而言,尤其是耐心度有限的用户,遇到等待时间较长的情况,会直接弃用对应的应用程序,造成了用户的流失。传统的解决方案就是对应用程序进行整体优化,简化一些功能或者延时处理或者是方案的优化等。但是存在两个问题,一是功能上的改动会导致一些业务受到影响;二是对应用程序的整体优化面向的是所有的用户,没有考虑用户之间的个体差异,因此可能应用程序被优化以后,耐心高的用户没有感觉,但是业务却受到了影响;而耐心低的用户依然流失了,没有达到预期的效果。

为了解决上述问题,本申请的实例提出了一种应用程序的启动方法。该启动方法可以根据用户对应用程序的操作信息以及应用程序的属性信息,通过用户等待指数模型分析出用户的对上述应用程序等待指数;然后根据分析出来的等待指数,自动选择不同的启动模式来满足不同等待指数的用户。这里,上述等待指数可以表示用户对上述应用程序的耐心度。

图1a显示了本申请一些实施例所述的一种应用程序的启动方法所适用的应用程序的启动系统结构示意图。如图1所示,本申请的应用程序的启动系统至少包括:用户终端11、网络12和应用服务器13。

在本申请的一些实例中,上述用户终端11可以是是智能手机、平板电脑和pda(personaldigitalassistant)等智能终端设备。该用户终端11上包含有显示装置,比如液晶屏幕。一般情况下,在用户终端11上可以安装各种应用程序14,比如,应用商店等应用程序。

应用服务器13为与应用程序对应的应用服务器,例如,可以是应用商店的服务器等等。应用服务器13中的应用服务器软件与用户终端11中的应用程序一起为用户提供服务,例如,响应于用户启动应用程序的操作,应用程序从服务器获取上述用户的用户标识和密码等用户信息。上述应用服务器13可以是单独的服务器也可以是多个服务器组成的集群服务器。

网络12可以包括有线网络和无线网络。如图1所示,在接入网一侧,用户终端11可以通过无线的方式或者有线的方式接入到网络12;而在核心网一侧,应用服务器13一般是通过有线方式连接到网络12的。当然,应用服务器13也可以通过无线方式连接到网络12。

下面结合附图,通过几个实施例对本申请实例提供的应用程序的启动方法进行说明。

基于上述图1所示的系统结构,本申请的一个实施例提供了一种应用程序的启动方法,可以作为一个功能模块集成于用户终端11的应用程序中,由应用程序执行,该方法根据用户的操作数据,通过用户等待指数模型计算用户的等待指数,进而确定应用程序的启动方式。本申请提供的应用程序启动方法根据用户的等待指数,使应用程序进行差异化的启动,满足不同等待指数的用户,避免了无差异化的优化存在的针对性弱的问题。

图1b示出了实现本申请的实施例提供的应用程序的启动方法的启动功能模块和该应用程序的结构图。如图1b所示,启动功能模块102位于应用程序101中,该启动功能模块102需要访问操作系统103产生的系统日志文件104来获取应用程序101相关的操作信息和/或属性信息,以及用户终端上安装的其他应用程序的一些信息,比如,可以通过操作系统的应用接口访问用户终端上安装的其他应用程序的列表。

图2示出了本申请实例提供的应用程序的启动方法的流程图。如图2所示,该应用程序启动方法包括以下步骤:

步骤201:获取所述应用程序的属性信息和/或操作信息。

在一些实例中,所述启动操作包括:用于初始化所述应用程序的启动操作、用于使后台运行或者挂起的所述应用程序在前台运行的启动操作中的至少一者。其中,所述用于初始化所述应用程序的启动操作包括:对于所述应用程序的桌面图标的操作、对于其它应用程序提供的所述应用程序的入口的操作中的至少一者;所述用于使后台运行或者挂起的所述应用程序在前台运行的启动操作包括:对于所述应用程序的通知消息的操作、对于其它应用程序提供的所述应用程序的入口的操作中的至少一者。

例如,初始化安装在手机上应用程序微信,可以通过点击手机桌面上的微信图标进行初始化微信应用程序,也可以在其他应用程序中提供的微信的入口,比如腾讯视频中发现一个好的电视剧,可以点击腾讯视频中提供的通过微信分享按钮,初始化微信以完成将上述电视剧分享给微信好友的操作。

又例如,用于使后台运行或者挂起的应用程序微信在前台运行的启动操作可以是通过点击微信的通知消息比如好友发送的通知消息的操作,启动后台运行或者挂起的应用程序微信,也可以是点击其他应用程序中提供的微信入口的点击操作,比如腾讯视频中发现一个好的电视剧,可以点击腾讯视频中提供的通过微信分享按钮,初始化微信以完成将上述电视剧分享给微信好友的操作。

步骤202:响应于对于应用程序的启动操作,根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数。

在一些实例中,在根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数之前,建立用户等待指数模型,所述用户等待指数模型包括:对应于应用程序的属性信息和/或操作信息的多个参数、根据所述多个参数上的分值确定所述等待指数的计算策略。

具体的,所述用户等待指数模型是用于分析计算用户的等待指数的模型,包括多个参数,从所述多个参数对用户的等待指数进行分析,将根据每个参数得出的分值进行计算得到上述用户对所述应用程序的等待指数,且上述得出的分值越高,表示上述用户对所述应用程序的等待指数越高。

这里,所述用户等待指数模型可以包括五个参数,该五个参数分别对应于应用程序的属性信息和/或操作信息,所述应用程序的属性信息包括程序类型以及所述应用程序的可替代性;所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式、指定类型操作的操作次数以及用户反感度。

需要说明的是,所述用户等待指数模型是预设在所述应用程序中的,当所述用户需要启动所述应用程序时,所述用户等待指数模型获取所述应用程序的属性信息和/或操作信息,并根据获取到的属性信息和/或操作信息计算所述用户的等待指数。

关于所述用户等待指数模型的建立,下文中会详细描述,这里不再赘述。

步骤203:根据所述用户的等待指数确定启动模式,其中,所述应用程序对应多于一个的启动模式,每个启动模式对应一个所述应用程序中的功能模块集合,不同启动模式对应的所述功能模块集合不同。

在一些实例中,所述启动模式包括:第一模式、第二模式以及第三模式中的至少两者;其中,所述第二模式对应的功能模块集合包含于所述第一模式对应的功能模块集合,所述第三模式对应的功能模块集合包含于所述第二模式对应的功能模块集合。

具体的,所述应用程序的启动模式可以包括:普通模式、精简模式以及极简模式中的至少两个模式,其中,上述普通模式也可以称为正常模式,包括所述应用程序的所用功能模块;上述精简模式包括的所述应用程序的功能模块少于上述普通模式;上述极简模式包括的所述应用程序的功能模块少于上述精简模式,也即包括的功能模块最少,上述三种启动模式包括的功能模块依次减少,同时相应的耗时也依次减少。

在一些实例中,当所述用户的等待指数大于或等于第二阈值时,确定以第一模式启动,并启动所述第一模式对应的所述功能模块集合;当所述用户的等待指数小于所述第二阈值时,确定以第二模式和/或第三模式启动,并启动所述第二模式对应的所述功能模块集合和/或第三模式对应的所述功能模块集合。

在一些实例中,当所述用户的等待指数大于或等于所述第三阈值且小于所述第二阈值时,确定以第二模式启动,并启动所述第二模式对应的所述功能模块集合;当所述用户的等待指数小于所述第三阈值时,确定以第三模式启动,并启动所述第三模式对应的所述功能模块集合。

具体的,当所述用户的等待指数大于或等于所述第一阈值时,表明所述用户的等待指数正常,确定以普通模式启动,并启动上述普通模式对应的功能模块集合;当所述用户的等待指数小于所述第一阈值时,表明所述用户的等待指数差,确定以精简模式和/或极简模式启动,并启动上述精简模式对应的所述功能模块集合和/或极简模式对应的所述功能模块集合。

更进一步的,当所述用户的等待指数大于或等于所述第二阈值且小于所述第一阈值时,表明所述用户的等待指数较差,确定以精简模式启动,并启动上述精简模式对应的所述功能模块集合;当所述用户的等待指数小于所述第二阈值时,表明所述用户的等待指数极差,确定以极简模式启动,并启动上述极简模式对应的所述功能模块集合。

例如,以上述应用程序为应用商店为例,设置第一阈值为20,第二阈值为10;当所述用户的等待指数大于或等于20时,表明所述用户的等待指数正常,确定以普通模式启动应用商店;当所述用户的等待指数大于或等于10且小于20时,表明所述用户的等待指数较差,确定以精简模式启动应用商店;当所述用户的等待指数小于10时,表明所述用户的等待指数极差,确定以极简模式启动应用商店。

步骤204:根据所述应用程序中所述确定的所述启动模式,启动所述启动模式对应的所述功能模块集合。

如前所述,所述用户等待指数模型是提前建立好,并预设在所述应用程序中的,下面详细介绍所述用户等待指数模型的建立方法。

在一些实例中,所述用户等待指数模型包括:对应于应用程序的属性信息和/或操作信息的多个参数、根据所述多个参数上的分值确定所述等待指数的计算策略。

具体的,所述用户等待指数模型可以包括五个参数,该五个参数分别对应于应用程序的属性信息和/或操作信息,所述应用程序的属性信息包括程序类型以及表示是否存在与所述应用程序相同或相似的应用程序的指示信息;所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式、指定类型操作的操作信息以及上述用户退出上述应用程序的操作信息,将上述五个参数对应的属性信息和/或操作信息作为输入,输入进上述用户等待指数模型,上述用户耐心模型根据上述输入的输出可以作为上述用户对上述应用程序的等待指数。

例如,所述用户等待指数模型可以通过如下包括五个参数的计算策略来得到上述用户的等待指数:所述用户的等待指数=(a+d)*b/c-e。图3为用户等待指数模型的一个示意图,如图3所示,用户等待指数模型301包括五个参数,每一个参数对应一个应用程序的属性信息和/或操作信息,作为用户耐心模型301的输入,其中,参数a为上述属性信息中的应用程序的类型、参数b为上述操作信息中的指定类型操作的操作信息,可以反映用户的目的性、参数c为上述属性信息中表示是否存在与所述应用程序相同或相似的应用程序的指示信息,可以反映所述应用程序的可替代性,对应的分值越高,所述应用程序的可替代性越高、参数d为上述操作信息中的所述用户对所述应用程序的启动方式,可以反映该启动方式下上述用户对所述应用程序的等待指数以及参数e为上述用户退出上述应用程序的操作信息,可以反映上述用户的用户反感度;五个参数:参数a、参数b、参数c、参数d和参数e作为输入302,输入进上述用户等待指数模型301而计算获得的输出上述用户对于上述应用程序的等待指数303。

在一些实例中,当所述多个参数中一个或多个参数对应的所述应用程序的属性信息和/或操作信息发生更新时,将更新后的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据发生更新后的所述输入和所述策略计算得到所述等待指数并输出,进而实现了根据所述应用程序的属性信息和/或操作信息的更新,更新所述用户等待指数模型。

通常情况下,由于所述应用程序的属性信息包括所述应用程序的类型以及指示是否存在与所述应用程序相同或相似的应用程序的指示信息不易发生变化的属性信息,因此,所述应用程序的属性信息更新的频率较低。所述应用程序的类型一般不会改变,例如,针对一个应用程序比如微信,属于社交应用类,其类型基本不变,因此只需要获取一次不需要进行更新。而所述指示否存在与所述应用程序相同或相似的应用程序的指示信息,只有当检测到至少一个与所述应用程序的类型相同或类似的应用程序时,或者,当检测到至少一个与所述应用程序的类型相同或类似的应用程序且所述用户在其使用的用户终端进行了安装时,需要根据检测结果与分值的对应关系,更新所述指示是否存在与所述应用程序相同或相似的应用程序的指示信息。

而所述应用程序的操作信息包括所述用户对所述应用程序的启动方式、指定类型操作的操作信息以及反映用户反感度的用户退出上述应用程序的操作信息等容易发生改变的操作信息,因此,所述应用程序的操作信息需要定期更新,例如,由于用户对所述应用程序的启动方式可能每次相同,也可能不同,因此上述操作信息中的所述用户对所述应用程序的启动方式需要在每次启动时获取,来更新所述用户对所述应用程序的启动方式,进而更新其对应的用户的等待指数;而上述操作信息中的指定类型操作的操作信息记录在系统的日志文件中,用户等待指数模型需要每隔预设时间获取一次;对于上述操作信息中的与用户反感度相关的用户退出上述应用程序的操作信息,应用程序设置计数器和预设时间长度的定时器,当上述应用程序的启动过程中监听到上述用户退出上述应用程序的操作信息,上述计数器加1,当上述定时器超时时,以上述计数器当前的值作为上述用户的流失次数以更新用户的流失次数,响应于用户的启动操作,用户等待指数模型使用更新后的流失次数确定用户反感度。

这里,可以通过两种方法确定用户退出上述应用程序:如果在启动流程结束后,上述应用程序所在的用户终端的屏幕上显示的界面不是上述应用程序的界面,则确定上述用户在上述应用程序的启动过程中退出;如果监听到上述用户有退出操作,比如按返回键或home键的操作,则确定上述用户在上述应用程序的启动过程中退出。

在一些实例中,在上述应用程序的启动过程中,监控上述用户对应的用户标识在启动过程中是否退出,如果退出,确定上述用户流失,更新所述用户等待指数模型的用户反感度对应的参数,这样针对不同的用户实现了差异化启动;如果用户在启动过程中没有退出,则通过确定的所述启动模式,进入启动流程以启动所述应用程序。这里,上述用户标识可以为用户使用的终端设备的标识也可以为用户登录所述应用程序的用户账号。

例如,可以通过将所述用户等待指数模型中的操作信息中的流失次数加1,以得到新的用户反感度来进行更新所述用户等待指数模型的用户反感度对应的参数,所述流失次数为应用程序尚未启动完成,上述用户对应的用户标识退出所述应用程序的次数。

在一些实例中,当所述应用程序的属性信息包括程序类型时,根据所述应用程序的标识获取所述应用程序的程序类型;根据已建立的各个程序类型与分值的对应关系,确定所述应用程序的所述程序类型对应的分值;根据所述程序类型对应的所述分值确定所述等待指数。其中,所述程序类型包括:社交应用、视频播放应用、导航应用中的至少两者;其中,所述社交应用对应的等待指数分值最高,所述导航应用对应的等待指数分值最低。这里,所述除所述社交应用、视频播放应用和导航应用以外的其它应用还可以是新闻类应用、购物类应用、图片处理应用等等。

当然,还可以根据其他标准对应用程序进行分类,具体的,可以将应用程序分为:社交应用类、地图导航类、新闻资讯类、生活消费类、拍摄美化类、影音播放类、图书阅读类、浏览器类等等。本申请对应用程序的分类方法不进行限定。

例如,各个程序类型与分值的对应关系可以如下,聊天类应用程序的用户的等待指数设定为10,因为聊天类应用程序一般具有较强的关系链,用户对聊天类应用程序的依赖度比较高,比如用户对微信的依赖度比较高,用户会耐心等待,所以聊天类应用程序的用户的等待指数高;视频播放类应用程序的用户的等待指数设定为8,因为视频播放类应用程序主要以优质的视频内容吸引用户,用户比较愿意等待,所以视频播放类应用程序的用户的等待指数较高;除所述社交应用和媒体播放以外的其它应用实用比如图片处理类应用程序的用户的等待指数设定为5,因为用户使用图片处理类应用程序主要为了达到某一目的,用户的等待指数较低,如果该类应用程序的速度慢,很可能造成用户流失。

在一些实例中,当所述应用程序的属性信息包括表示是否存在与所述应用程序相同或相似的应用程序的指示信息时,获取应用程序安装列表;查询所述应用程序安装列表中是否存在与所述应用程序的类型相同或相似的应用程序;以及根据所述查询的结果生成所述指示信息;根据已建立好的所述指示信息与分值的对应关系,确定所述指示信息所对应的分值;根据所述指示信息对应的所述分值确定所述等待指数。这里,上述表示是否存在与所述应用程序相同或相似的应用程序的指示信息可以反映上述应用程序的可替代性。更进一步的,上述步骤中的查询所述安装列表中是否存在与所述应用程序的类型相同或相似的应用程序可以包括:根据上述安装列表,去服务器查询该安装列表内是否存在与上述应用程序类型相同或相似的应用程序,其中,上述服务器上维护与上述应用程序类型相同或相似的应用程序的相关信息以及预先建立的应用程序的标识和类型的对应关系,也即通过一个应用程序的标识可以确定该应用程序的类型。

具体的,从操作系统提供的接口获取上述应用程序所在的用户终端上安装的所有应用程序的安装列表,根据该安装列表,去服务器查询该安装列表内每一个应用程序的标识对应的的程序类型、内容也可以称用途以及下载量,如果该安装列表中存在至少一个应用程序与上述应用程序的程序类型相同或相似的应用程序,则认为上述安装列表中存在与上述应用程序相同或相似的应用程序。

更进一步的,在建立上述用户等待指数模型时,可以设置表示是否存在与所述应用程序相同或相似的应用程序的指示信息对应的初始分值,如果当前市场上存在与所述应用程序类型相同的应用程序且检测到上述用户对应的用户标识没有安装上述与所述应用程序类型相同的应用程序时,所述应用程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息对应的分值加上第一预设值,如果当前市场上存在与所述应用程序类型相同的应用程序且检测到上述用户对应的用户标识安装了至少一个上述与所述应用程序类型相同的应用程序,则所述应用程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息对应的分值加上第二预设值;将所述应用程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的当前分值作为所述等待指数。

例如,设定所述应用程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息对应的初始值为1;如果存在和所述应用程序内容相同或类似、下载量相当的应用程序,也即所述应用程序的可替代性较高,则所述应用程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的分值加1,所述程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的分值为2;更进一步的,如果存在和所述应用程序内容相同或类似、下载量相当的其他至少一个应用程序,并且上述用户的用户终端上安装了至少一个上述与所述应用程序相同或类似、下载量相当的应用程序,则所述程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的分值加2,所述程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的当前分值为3,将所述程序的表示是否存在与所述应用程序相同或相似的应用程序的指示信息的当前分值3作为所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括指定类型操作的操作信息时,监听并记录所述用户的用户标识对应的在启动所述应用程序前所述指定类型操作的操作信息;根据记录的所述操作信息,确定在启动所述应用程序前的预定时间段内所述用户标识对应的所述指定类型操作的操作次数;根据已建立好的操作次数范围与分值的对应关系,确定所述操作次数所在的操作次数范围,并确定所述操作次数所对应的分值;根据所述操作次数对应的所述分值确定所述等待指数。

这里,所述操作次数反映用户的目的性,如果上述用户在启动所述应用程序前频繁操作,则认为用户的目的性较弱,如果上述用户在启动所述应用程序前无多余的操作,则认为用户目的性较强。

例如,操作次数范围与所述分值的对应关系可以为当上述用户在启动所述应用程序前的操作次数大于或等于n时,认为上述用户的目的性较弱,则将b的值取为1;当上述用户在启动所述应用程序前的操作次数小于n时,认为上述用户的目的性较强,则将b的值取为2,其中,n为预设值。

在一些实例中,当所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式时,响应于对于应用程序的启动操作,获取与所述启动操作对应的所述应用程序的启动方式,其中,所述启动方式包括点击所述应用程序的桌面图标的启动方式、点击所述应用程序提供的入口的启动方式以及点击其它应用程序提供的所述应用程序的入口的启动方式中的至少两者;根据已建立的各个启动方式与分值的对应关系,确定所述启动方式所对应的分值;根据所述启动方式对应的所述分值确定所述等待指数。

例如,各个启动方式与分值的对应关系可以为点击桌面图标启动的等待指数为10;点击所述应用程序提供的入口的启动方式启动的等待指数为8;点击其它应用程序提供的所述应用程序的入口的启动方式为5;其余的启动方式的等待指数为5。

又例如,点击所述应用程序提供的入口的启动方式可以为点击有意义的通知启动,点击其它应用程序提供的所述应用程序的入口的启动方式可以为点击广告类的通知消息启动。具体的,应用程序用户可以通过点击用户终端桌面上的应用程序的图标来进行启动;当上述应用程序向用户发出有意义的通知消息时,响应于用户对该有意义的通知消息的点击操作,上述应用程序启动,比如应用程序“微信”向用户发送的内容为好友信息的通知消息,响应于上述用户对该通知消息的点击操作,“微信”启动并展示该通知消息的内容;当上述应用程序向用户发送推广信息类的通知消息,响应于用户对该推广信息类的通知消息的点击操作,上述应用程序启动,其中,该推广信息可以是上述应用程序提供的入口,也可以是其他应用程序提供的上述应用程序的入口,比如应用程序“应用商店”向上述用户发送内容为广告的通知消息,响应于上述用户对该通知消息的点击操作,“应用商店”启动并展示该通知消息的内容,又比如腾讯视频中发现一个好的电视剧,可以点击腾讯视频中提供的通过微信分享按钮,启动应用程序微信以完成将上述电视剧分享给微信好友的操作。

图4示出了三种不同启动方式的示例。如图4所示,a图中,用户可以通过通过用户终端桌面上的应用程序的图标401来启动上述应用程序;当上述应用程序在后台运行或挂起时,用户可以通过上述应用程序发送的通知消息来启动上述应用程序,比如b图中,应用程序微信在后台运行,当微信发来通知消息402时,用户可以点击用户终端展示的上述通知消息402来启动应用程序微信,以进行后续操作;另外,用户还可以通过其他应用程序提供的上述应用程序的入口来启动上述应用程序,比如c图中,当用户在某应用程序xx视频上观看一部电视剧,该应用程序xx视频提供了应用程序微信的入口403,通过点击应用程序微信的入口403用户可以启动应用程序微信,来分享上述电视剧给其好友。

在一些实例中,当所述应用程序的所述操作信息包括所述用户在所述应用程序的启动过程中退出所述应用程序的操作信息时,监听并记录所述用户的用户标识对应的退出所述应用程序的操作信息;根据预设时间段内的所述操作信息,确定所述预设时间段内所述用户标识对应的在所述应用程序的启动过程中退出所述应用程序的次数并将其作为所述用户的流失次数;根据已建立的用户流失次数和分值的对应关系,确定所述确定的所述用户的流失次数对应的分值;根据所述流失次数对应的所述分值确定所述等待指数,其中,所述流失次数为在所述应用程序的启动过程中,所述用户对应的用户标识退出所述应用程序的次数。

在一些实例中,所述对应关系为一种以所述流失次数为自变量,以所述用户反感度为因变量的关系;设置计数器的初始值,设置定时器时长为预定时长;在所述应用程序启动的过程中,每当监听到所述用户对应的用户标识退出所述应用程序的操作信息,则所述计数器加1;当所述定时器超时时,获取所述计数器的当前值,并将所述计数器的当前值作为所述用户的流失次数,并重置所述计数器为所述初始值。

例如,所述用户反感度的分值与流失次数的对应关系可以为所述用户反感度=流失次数-1,这样根据预设时间段内用户的流失次数,可以确定出所述用户反感度的值,其中,所述流失次数为应用程序尚未启动完成,上述所述用户对应的用户标识退出所述应用程序的次数,首次流失认为是误操作。例如,一天内用户流失2次,则上述用户反感度为1。这里,上述用户标识可以为用户使用的终端设备的标识也可以为用户登录所述应用程序的用户账号。

通过上述方案,一方面提供了用户等待指数模型可以计算不同用户对不同应用程序的等待指数,为应用程序的优化提供了一个新的可参考的参数。另一方面针对不同用户采用不同的启动模式,实现了差异化的启动,满足了不同等待指数的用户,给用户以更好的体验,避免了整体优化存在的针对性弱的问题,提高了应用程序的效率,节省了硬件资源。

下面结合附图,对上述应用程序的启动方法进行详细说明。该方法应用于如图1所示的实施环境。图5为上述应用程序的启动方法的流程图,如图5所示,该方法主要包括以下步骤:

步骤501:根据应用程序的属性信息和/或操作信息的初始值,建立用户等待指数模型。

如前所述,上述用户等待指数模型是预置在上述应用程序中,来作为该应用程序的启动功能模块,在预置在上述应用程序时,上述用户等待指数模型的各个参数对应的属性信息和/或操作信息使用默认的初始值。

具体的,上述用户等待指数模型可以包括五个参数,该五个参数分别对应于应用程序的属性信息和/或操作信息:所述应用程序的属性信息包括程序类型以及表示是否存在相同或类似的应用程序的指示信息;所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式、指定类型操作的操作信息以及上述用户退出上述应用程序的操作信息。在预置在上述应用程序时,上述用户等待指数模型的五个参数对应的属性信息和/或操作信息可以使用默认的初始值。例如,所述应用程序的属性信息中的程序类型对应的分值可以根据所述应用程序的类型确定,比如聊天类应用程序的分值为10,则上述程序类型的初始值为10;又例如所述应用程序的属性信息中表示是否存在相同或类似的应用程序的指示信息,默认的初始值为1,经过预设时间如果存在至少一个相同或类似的应用程序,但用户没有安装,则该属性信息加1,更进一步的,经过预设时间如果确定存在至少一个相同或类似的应用程序,且检测到用户进行了安装,则该属性信息加2;再例如,所述应用程序的所述操作信息中的所述用户对所述应用程序的启动方式的默认方式为桌面图标的启动方式,该启动方式对应的分值为10,因此,所述应用程序的所述操作信息中的所述用户对所述应用程序的启动方式的默认的初始值为10。

步骤502:响应于对于上述应用程序的启动操作,获取上述应用程序的属性信息和/或操作信息。

响应于对上述应用程序的启动操作,该启动功能模块获取上述应用程序的属性信息和/或操作信息,如果上述用户等待指数模型的所述多个参数中一个或多个参数对应的所述应用程序的属性信息和/或操作信息发生更新时,将更新后的上述应用程序的属性信息和/或操作信息作为上述用户等待指数模型的输入,使得上述用户等待指数模型根据发生更新后的所述输入和所述策略计算得到所述等待指数并输出,进而实现了根据所述应用程序的属性信息和/或操作信息的更新,更新所述用户等待指数模型。

在一些实例中,为了节省资源,提高效率,上述启动功能模块响应于对于上述应用程序的启动操作可以只获取预设的部分属性信息和/或操作信息,进而加快了启动的进程。具体的,当上述用户等待指数模型包括上述五个参数时,由于上述应用程序的属性信息中程序的类型一般情况下不会改变,并且是否存在相同或类似的应用程序的属性信息更新的周期一般也比较长,因此上述启动功能模块可以只获取上述应用程序的上述操作信息。更进一步的,为了更进一步的提高效率,由于上述应用程序的操作信息中指定类型操作的操作信息以及上述用户在上述应用程序的启动过程中退出上述应用程序的操作信息可以定期更新,因此,上述启动功能模块可以只获取上述应用程序的操作信息中上述用户对所述应用程序的启动方式,以使上述用户耐心模型根据上述用户对上述用户程序的当前的启动方式确定用户的等待指数。

步骤503:根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数。

在一些实例中,将所获取的所述多个参数各自对应的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据所述输入和所述策略计算得到所述等待指数并输出;及将所述用户等待指数模型输出的所述等待指数作为所述用户对于所述应用程序的所述等待指数。

步骤504:根据所述用户的等待指数确定启动模式,其中,所述应用程序对应多于一个的启动模式,每个启动模式对应一个所述应用程序中的功能模块集合,不同启动模式对应的所述功能模块集合不同。

步骤505:根据所述应用程序中所述确定的所述启动模式,启动所述启动模式对应的所述功能模块集合。

步骤506:在启动所述应用程序的过程中,监听上述用户在上述应用程序的启动过程中退出上述应用程序的操作,如果监听到上述用户的用户标识退出上述应用程序的操作,则执行步骤507;如果没有监听到,则执行步骤508。

步骤507:更新用户的流失次数。

设置计数器,初始值为第一取值;在所述应用程序启动的过程中,如果监听到所述用户对应的用户标识退出所述应用程序的操作信息,则所述计数器加1,也即用户的流失次数加1,并根据当前的流失次数确定上述用户的反感度,进而使上述用户等待指数模型根据更新后的用户的反感度更新所述用户的等待指数。

步骤508:继续执行启动流程。

对应以上应用程序的启动方法,本申请还提供了实现上述方法的装置600。图6示出了应用程序的启动装置600的结构图。如图6所示,该启动装置600包括获取模块601、确定模块602以及启动模块603,其中,各模块的功能如下:

获取模块601,响应于对于应用程序的启动操作,获取所述应用程序的属性信息和/或操作信息;

确定模块602,根据所述应用程序的属性信息和/或操作信息,确定用户对于所述应用程序的等待指数;

所述确定模块602,进一步根据所述用户的等待指数确定启动模式,其中,所述应用程序对应多于一个的启动模式,每个启动模式对应一个所述应用程序中的功能模块集合,不同启动模式对应的所述功能模块集合不同;以及

启动模块603,根据所述应用程序中所述确定的所述启动模式,启动所述启动模式对应的所述功能模块集合。

在一些实例中,所述启动操作包括:用于初始化所述应用程序的启动操作、用于使后台运行或者挂起的所述应用程序在前台运行的启动操作中的至少一者。

在一些实例中,装置进一步包括:建立模块604,用于建立用户等待指数模型,所述用户等待指数模型包括:对应于应用程序的属性信息和/或操作信息的多个参数、根据所述多个参数上的分值确定所述等待指数的计算策略;所述获取模块601,进一步获取所述用户等待指数模型中所述多个参数各自对应的所述应用程序的属性信息和/或操作信息;所述确定模块602,进一步将所获取的所述多个参数各自对应的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据所述输入和所述策略计算得到所述等待指数并输出;及将所述用户等待指数模型输出的所述等待指数作为所述用户对于所述应用程序的所述等待指数。

在一些实例中,所述多个参数中一个或多个参数对应的所述应用程序的属性信息和/或操作信息发生更新时,所述确定模块602,进一步将更新后的所述应用程序的属性信息和/或操作信息作为所述用户等待指数模型的输入,使得所述用户等待指数模型根据发生更新后的所述输入和所述策略计算得到所述等待指数并输出。

在一些实例中,当所述应用程序的属性信息包括程序类型时,所述获取模块601,进一步根据所述应用程序的标识获取所述应用程序的程序类型;所述确定模块602,进一步根据已建立的各个程序类型与分值的对应关系,确定所述应用程序的所述程序类型对应的分值;根据所述程序类型对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的属性信息包括表示是否存在与所述应用程序相同或相似的应用程序的指示信息时,所述获取模块601,获取应用程序安装列表;查询所述应用程序安装列表中是否存在与所述应用程序的类型相同或相似的应用程序;以及根据所述查询的结果生成所述指示信息;所述确定模块602,进一步根据已建立好的所述指示信息与分值的对应关系,确定所述指示信息所对应的分值;根据所述指示信息对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括所述用户对所述应用程序的启动方式时,所述获取模块601,进一步响应于对于应用程序的启动操作,获取与所述启动操作对应的所述应用程序的启动方式,所述启动方式包括点击所述应用程序的桌面图标的启动方式、点击所述应用程序提供的入口的启动方式以及点击其它应用程序提供的所述应用程序的入口的启动方式中的至少两者;所述确定模块602,进一步根据已建立的各个启动方式与分值的对应关系,确定所述启动方式所对应的分值;根据所述启动方式对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括指定类型操作的操作信息时,所述获取模块601,进一步监听并记录所述用户的用户标识对应的在启动所述应用程序前所述指定类型操作的操作信息;所述确定模块602,进一步根据记录的所述操作信息,确定在启动所述应用程序前的预定时间段内所述用户标识对应的所述指定类型操作的操作次数;根据已建立好的操作次数范围与分值的对应关系,确定所述操作次数所在的操作次数范围,并确定所述操作次数所对应的分值;根据所述操作次数对应的所述分值确定所述等待指数。

在一些实例中,当所述应用程序的所述操作信息包括所述用户在所述应用程序的启动过程中退出所述应用程序的操作信息时,所述获取模块601,进一步监听并记录所述用户的用户标识对应的退出所述应用程序的操作信息;所述确定模块602,进一步根据预设时间段内的所述操作信息,确定所述预设时间段内所述用户标识对应的在所述应用程序的启动过程中退出所述应用程序的次数并将其作为所述用户的流失次数;根据已建立的用户流失次数和分值的对应关系,确定所述确定的所述用户的流失次数对应的分值;及根据所述流失次数对应的所述分值确定所述等待指数,其中,所述流失次数为在所述应用程序的启动过程中,所述用户对应的用户标识退出所述应用程序的次数。

在一些实例中,所述对应关系为一种以所述流失次数为自变量,以所述用户反感度为因变量的关系;所述确定模块602设置计数器的初始值,设置定时器时长为预定时长;在所述应用程序启动的过程中,每当所述确定模块602监听到所述用户对应的用户标识退出所述应用程序的操作信息确定所述用户对应的用户标识退出所述应用程序,则确定模块602中的所述计数器加1,并且所述确定模块602,进一步当所述定时器超时时,获取所述计数器的当前值,并将所述计数器的当前值作为所述用户的流失次数,并重置所述计数器为所述初始值。

在一些实例中,所述启动模式包括:第一模式、第二模式以及第三模式中的至少两者;其中,所述第二模式对应的功能模块集合包含于所述第一模式对应的功能模块集合,所述第三模式对应的功能模块集合包含于所述第二模式对应的功能模块集合;当所述用户的等待指数大于或等于第二阈值时,所述确定模块602,进一步确定以第一模式启动;所述启动模块603,进一步启动所述第一模式对应的所述功能模块集合;当所述用户的等待指数小于所述第二阈值时,所述确定模块602,进一步确定以第二模式和/或第三模式启动;所述启动模块603,进一步启动所述第二模式对应的所述功能模块集合和/或第三模式对应的所述功能模块集合。

在一些实例中,当所述用户的等待指数大于或等于所述第三阈值且小于所述第二阈值时,所述确定模块602,进一步确定以第二模式启动;所述启动模块603,进一步启动所述第二模式对应的所述功能模块集合;当所述用户的等待指数小于所述第三阈值时,所述确定模块602,进一步确定以第三模式启动;所述启动模块603,进一步启动所述第三模式对应的所述功能模块集合。

上述应用程序的启动装置,一方面提供了用户等待指数模型可以计算不同用户对不同应用程序的等待指数,为应用程序的优化提供了一个新的可参考的参数。另一方面针对不同用户采用不同的启动模式,实现了差异化的启动,满足了不同等待指数的用户,给用户以更好的体验,避免了整体优化存在的针对性弱的问题,提高了应用程序的效率,节省了硬件资源。

图7示出了实现应用程序的启动方法的启动装置600所在的用户终端700的组成结构图。如图7所示,该计算设备包括一个或者多个处理器(cpu)702、通信模块704、存储器706、用户接口710,以及用于互联这些组件的通信总线708。

处理器702可通过通信模块704接收和发送数据以实现网络通信和/或本地通信。

用户接口710包括一个或多个输出设备712,其包括一个或多个扬声器和/或一个或多个可视化显示器。用户接口710也包括一个或多个输入设备714,其包括诸如,键盘,鼠标,声音命令输入单元或扩音器,触屏显示器,触敏输入板,姿势捕获摄像机或其他输入按钮或控件等。

存储器706可以是高速随机存取存储器,诸如dram、sram、ddrram、或其他随机存取固态存储设备;或者非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备,或其他非易失性固态存储设备。

存储器706存储处理器702可执行的指令集,包括:

操作系统716,包括用于处理各种基本系统服务和用于执行硬件相关任务的程序;

应用718,包括用于实现应用程序的启动方法各种应用程序,这种应用程序能够实现上述各实例中的处理流程,比如可以包括图6所示的实现应用程序的启动方法的装置600中的部分或全部单元。各单元或模块601-604中的至少一个模块可以存储有机器可执行指令。处理器702通过执行存储器706中各模块601-604中至少一个模块中的机器可执行指令,进而能够实现上述各模块601-604中的至少一个模块的功能。

需要说明的是,上述各流程和各结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。各模块的划分仅仅是为了便于描述采用的功能上的划分,实际实现时,一个模块可以分由多个模块实现,多个模块的功能也可以由同一个模块实现,这些模块可以位于同一个设备中,也可以位于不同的设备中。

各实施例中的硬件模块可以以硬件方式或硬件平台加软件的方式实现。上述软件包括机器可读指令,存储在非易失性存储介质中。因此,各实施例也可以体现为软件产品。

因此,本申请的一些实例还提供了一种计算机可读存储介质,其上存储有计算机指令,其中,所述计算机指令被处理器执行时实现上述图2-5中所述方法的步骤。

各例中,硬件可以由专门的硬件或执行机器可读指令的硬件实现。例如,硬件可以为专门设计的永久性电路或逻辑器件(如专用处理器,如fpga或asic)用于完成特定的操作。硬件也可以包括由软件临时配置的可编程逻辑器件或电路(如包括通用处理器或其它可编程处理器)用于执行特定操作。

另外,本申请的每个实例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本申请。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本申请,本申请还提供了一种非易失性存储介质,其中存储有数据处理程序,这种数据处理程序可用于执行本申请上述方法实例中的任何一种实例。

图6中的模块对应的机器可读指令可以使计算机上操作的操作系统等来完成这里描述的部分或者全部操作。非易失性计算机可读存储介质可以是插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器。安装在扩展板或者扩展单元上的cpu等可以根据指令执行部分和全部实际操作。

另外,在本申请各个实例中的装置及各模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上装置或模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1