掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及云手机技术领域,尤其涉及一种云手机应用唤起方法、装置、电子设备及存储介质。

背景技术

云手机是一种基于云计算技术的手机服务模式。它通过将手机的操作系统和应用程序等关键部分放在云端服务器上进行处理,用户只需通过网络连接使用普通的终端设备(如智能手机、平板电脑等)就可以享受到与传统手机相似的功能和体验。云手机的优势在于能够实现跨平台、跨设备的无缝切换,用户可以随时随地访问自己的手机数据和应用,而不受设备限制。

Deeplink即深度链接,能被运用于任意渠道触点(微信、短信、各大浏览器及其他App(Application,应用程序)等),直接从这些平台跳转至目标内容页,省去中间“打开App首页”“搜索页面”等无效步骤。

现有技术中,当某个云手机的新用户或浅度用户使用云手机时,云手机系统里自带的app寥寥无几,若用户访问页面时遇到多种deeplink的场景,每次都要求用户先安装app才能通过深度链接访问唤起app,十分费时费力,给用户造成不好的云手机体验。

发明内容

本申请旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本申请的第一个目的在于提出一种云手机应用唤起方法,以实现在云手机内未安装深度链接对应的目标应用,且终端已安装目标应用的情况下,通过云手机唤起终端已有目标应用,无需在云手机内再次安装目标应用的功能,提高云手机浏览各大应用的时效性,从而提升用户体验。

本申请的第二个目的在于提出一种云手机应用唤起装置。

本申请的第三个目的在于提出一种电子设备。

本申请的第四个目的在于提出一种计算机可读存储介质。

本申请的第五个目的在于提出一种计算机程序产品。

为达上述目的,本申请第一方面实施例提出了一种云手机应用唤起方法,包括:

获取终端应用列表信息;所述终端应用列表信息包括终端已安装应用的链接协议信息;

响应于用户点击目标应用的深度链接,获取所述深度链接对应的目标链接协议信息;

基于所述目标链接协议信息,确定所述云手机内是否已安装所述目标应用;

在确定所述云手机内未安装所述目标应用的情况下,基于所述目标链接协议信息和所述终端应用列表信息,确定所述终端是否已安装所述目标应用;

在确定所述终端已安装所述目标应用的情况下,通过终端操作系统唤起所述目标应用,并跳转至所述深度链接对应的目标页。

在一些实施例中,所述获取终端应用列表信息,包括:

向所述终端操作系统发送第一请求;

接收并保存所述终端操作系统基于所述第一请求返回的终端应用列表信息。

在一些实施例中,所述向所述终端操作系统发送第一请求,包括:

响应于用户打开所述云手机,向所述终端操作系统发送第一请求。

在一些实施例中,所述响应于用户点击目标应用的深度链接,获取所述深度链接对应的目标链接协议信息;包括:

响应于用户点击目标应用的深度链接,通过包管理器监听服务监听所述深度链接;并解析所述深度链接,获取所述深度链接对应的目标链接协议信息。

在一些实施例中,所述基于所述目标链接协议信息,确定所述云手机内是否已安装所述目标应用;包括:

通过所述包管理器监听服务,监听所述云手机内是否存在所述目标链接协议信息;

在所述云手机内不存在所述目标链接协议信息的情况下,确定所述云手机内未安装所述目标应用。

在一些实施例中,所述基于所述目标链接协议信息和所述终端应用列表信息,确定所述终端是否已安装所述目标应用;包括:

将所述目标链接协议信息与所述终端应用列表信息中的终端已安装应用的链接协议信息进行匹配,得到匹配结果;

基于所述匹配结果,确定所述终端是否已安装所述目标应用。

在一些实施例中,所述通过终端操作系统唤起所述目标应用;包括:

将所述目标链接协议信息通过云侧软件开发工具包SDK与所述终端的端侧SDK之间的消息通道发送至所述终端操作系统,以便所述终端操作系统基于所述目标链接协议信息,唤起所述目标应用。

为达上述目的,本申请第二方面实施例提出了一种云手机应用唤起装置,包括:

信息获取模块,用于获取终端应用列表信息;所述终端应用列表信息包括终端已安装应用的链接协议信息;

链接响应模块,用于响应于用户点击目标应用的深度链接,获取所述深度链接对应的目标链接协议信息;

信息确认模块,用于基于所述目标链接协议信息,确定所述云手机内是否已安装所述目标应用;

信息匹配模块,用于在确定所述云手机内未安装所述目标应用的情况下,基于所述目标链接协议信息和所述终端应用列表信息,确定所述终端是否已安装所述目标应用;

应用唤起模块,用于在确定所述终端已安装所述目标应用的情况下,通过终端操作系统唤起所述目标应用,并跳转至所述深度链接对应的目标页。

在一些实施例中,所述信息获取模块,具体用于:

向所述终端操作系统发送第一请求;

接收并保存所述终端操作系统基于所述第一请求返回的终端应用列表信息。

在一些实施例中,所述信息获取模块在向所述终端操作系统发送第一请求时,用于:

响应于用户打开所述云手机,向所述终端操作系统发送第一请求。

在一些实施例中,所述链接响应模块,具体用于:

响应于用户点击目标应用的深度链接,通过包管理器监听服务监听所述深度链接;并解析所述深度链接,获取所述深度链接对应的目标链接协议信息。

在一些实施例中,所述信息确认模块,具体用于:

通过所述包管理器监听服务,监听所述云手机内是否存在所述目标链接协议信息;

在所述云手机内不存在所述目标链接协议信息的情况下,确定所述云手机内未安装所述目标应用。

在一些实施例中,所述信息匹配模块,具体用于:

将所述目标链接协议信息与所述终端应用列表信息中的终端已安装应用的链接协议信息进行匹配,得到匹配结果;

基于所述匹配结果,确定所述终端是否已安装所述目标应用。

在一些实施例中,所述应用唤起模块在通过终端操作系统唤起所述目标应用时;用于:

将所述目标链接协议信息通过云侧SDK与所述终端的端侧SDK之间的消息通道发送至所述终端操作系统,以便所述终端操作系统基于所述目标链接协议信息,唤起所述目标应用。

为达上述目的,本申请第三方面实施例提出了一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现第一方面所述的方法。

为达上述目的,本申请第四方面实施例提出了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面所述的方法。

为达上述目的,本申请第五方面实施例提出了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所述的方法。

本申请提供的云手机应用唤起方法、装置、电子设备及存储介质,在云手机内未安装深度链接对应的目标应用的情况下,云手机可以通过向终端操作系统获取的终端应用列表信息,查询终端是否已安装目标应用,在确认终端已安装目标应用的情况下,通知终端操作系统唤起目标应用并跳转至目标页,从而用户在云手机即完成唤起终端已有目标应用,无需在云手机内再次安装目标应用,提高云手机浏览各大应用的时效性,从而提升用户体验。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本申请实施例一所提供的一种云手机应用唤起方法的流程示意图;

图2为本申请实施例的云手机实例的组件结构示意图;

图3为本申请实施例二所提供的一种云手机应用唤起装置的框图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

术语解释:

平台:指系统架构。

通过深度链接直接从当前平台跳转至目标内容页,省去中间“打开App首页”“搜索页面”等无效步骤。对于“App社交分享、裂变传播转化、沉默用户唤醒、用户流失召回、DSP广告投放、短信邮箱营销、地推首单激活、搜索引擎引流”等运营场景都有着奇效,一方面能快速实现场景还原,带来更高效的用户体验。针对已安装相应App的情况,把特定的参数通过url(uniform resource locator,统一资源定位系统)的形式传递给App,从而直接打开指定的内部页面,实现从链接直达App内部页面的跳转。

常见的深度链接如:打开微信(weixin://xxx)、打开百度(baidu://)、发送短信(sms:198****1062?body=发送内容)、拨打电话(tel:198****1062)等。

在一些场景中,云手机app内深度链接的解决方案是采用安卓系统通用方案注册URI Scheme(链接协议)来实现。URI Scheme是一个自定义的协议头,比如"myapp://"。用户可以在AndroidManifest.xml文件中的标签中添加一个个标签,并设置对应的scheme,配置AndroidManifest文件,定义host(主机名)和path(路径)或者更具体的深度链接规则,最后编写处理深度链接跳转逻辑即可。当用户点击某个深度链接时,操作系统会检测当前scheme所代表的app是否已安装,如果已安装,唤醒相应App的目标页,否则跳转应用商城提醒用户安装app。

例如,当用户浏览web页面时,当点击某个深度链接,根据现有的标准是检测云手机内是否已安装该应用,已安装则直接跳转应用目标页,否则跳转应用商城提醒用户安装。

但是随着互联网的迅速发展,应用商城里的app应接不暇、数不胜数。对于用户来说,常用的app都会安装在终端里方便日常使用。当某个云手机的新用户或浅度用户使用云手机时,云手机系统里自带的app寥寥无几,若用户访问页面时遇到多种深度链接的场景,每次都要求用户先安装app才能通过深度链接访问唤起app,十分费时费力,给用户造成不好的云手机体验,容易让云手机用户流失。

针对上述问题,本申请实施例提供了一种云手机应用唤起方法、装置、电子设备及存储介质,以实现云手机app内部唤起终端app的能力,提高云手机APP浏览各大应用的时效性,提升用户体验。

下面参考附图描述本申请实施例的云手机应用唤起方法、装置及设备。

图1为本申请实施例所提供的一种云手机应用唤起方法的流程示意图。

需要说明的是,本申请实施例的云手机应用唤起方法的执行主体为本申请实施例的云手机应用唤起装置,该云手机应用唤起装置可被配置于智能终端等电子设备中,以使该电子设备可以执行云手机应用唤起功能。

如图1所示,该云手机应用唤起方法包括以下步骤:

步骤101,获取终端应用列表信息;终端应用列表信息包括终端已安装应用的链接协议信息。

首先需要说明的是,终端指的是具有屏幕显示功能的智能设备,可以包括但不限于手机、电视、智能手表等。

作为一种实现方式,响应于用户打开云手机,向终端操作系统发送第一请求;接收并保存终端操作系统基于第一请求返回的终端应用列表信息。

可以理解为,用户登录云手机后,向终端操作系统请求获取终端应用列表信息并保存在云手机本地,终端应用列表信息包括终端所有已安装app应用的链接协议信息。

还需要说明的是,在用户登录云手机后,通过云手机管理平台分配的账号鉴权、云机实例等信息连接云手机实例。连接上云手机实例后,云手机管理平台会自动分配端云推送服务通道至终端操作系统内置的端侧SDK(Software Development Kit,软件开发工具包)和云手机云侧SDK(简称云侧SDK)。

其中,端云推送服务,借助于云手机管理平台的推送服务能力,即能够提供云侧SDK和终端的端侧SDK之间的特定通道(即端云推送服务通道),来实现端云推送服务。即端云推送服务能够通过该端云推送服务通道接收来自云侧SDK推送的包管理器信息,也能根据终端唯一标识等信息准确查找出一个或多个终端,并将消息通过该端云推送服务通道发送至目标终端的端侧SDK。

其中,终端操作系统内置的端侧SDK指的是用于接收端云推送服务推送过来的消息,并提供数据给终端操作系统调用的服务。

其中,端侧SDK和云侧SDK之间建立消息通道所需要的登录令牌、鉴权等操作均是由云手机管理平台实现的,属于现有技术,在此不再赘述。

其中,终端操作系统内置的端侧SDK,还用于接收来自云手机侧实时推送的同屏音视频推流,并交由端侧SDK完成渲染工作,以完成云手机画面的显示。

步骤102,响应于用户点击目标应用的深度链接,获取深度链接对应的目标链接协议信息。

作为一种实现方式,响应于用户点击目标应用的深度链接,通过包管理器监听服务监听深度链接;并解析深度链接,获取深度链接对应的目标链接协议信息。

这里需要说明的是,如图2所示,云手机实例的组件结构的系统框架层包括包管理器,而云侧SDK适配层包括包管理器监听服务,即通过云手机内云侧SDK适配层对系统框架的包管理器的监听服务。

其中,包管理器监听服务为运行在系统框架层的服务,具有监听云手机系统的深度链接请求,解析该深度链接请求,并识别包管理器AndroidManifest文件里的深度链接规则等功能。

示例性的,深度链接对应的链接协议信息包括scheme协议名称,host即Scheme作用的地址域,port即该路径的端口号,页面path,参数query,具体形式为Scheme://host:port/path?query。

步骤103,基于目标链接协议信息,确定云手机内是否已安装目标应用。

作为一种实现方式,通过包管理器监听服务,监听云手机内是否存在目标链接协议信息;在云手机内不存在目标链接协议信息的情况下,确定云手机内未安装目标应用。

具体的,包管理器监听服务在监听到云手机系统的深度链接请求之后,识别云手机操作系统的包管理器的AndroidManifest文件里的深度链接规则,若识别系统内不存在该深度链接对应的url scheme,则可以确定云手机内未安装该目标应用。

步骤104,在确定云手机内未安装目标应用的情况下,基于目标链接协议信息和终端应用列表信息,确定终端是否已安装目标应用。

作为一种实现方式,确定云手机内未安装目标应用之后,将目标链接协议信息与终端应用列表信息中的终端已安装应用的链接协议信息进行匹配,得到匹配结果;基于匹配结果,确定终端是否已安装目标应用。

在本实施例中,将目标链接协议信息与终端应用列表信息中的终端已安装应用的链接协议信息进行匹配,若当前深度链接对应的链接协议信息存在于终端应用列表信息中,则确定终端已安装该目标应用。

步骤105,在确定终端已安装目标应用的情况下,通过终端操作系统唤起目标应用,并跳转至深度链接对应的目标页。

作为一种实现方式,通过终端操作系统唤起目标应用的实现方式,包括:将目标链接协议信息通过云侧SDK与终端的端侧SDK之间的消息通道发送至终端操作系统,以便终端操作系统基于目标链接协议信息,唤起目标应用。

由此,在确定终端已安装目标应用的情况下,则将当前深度链接信息(即当前深度链接对应的链接协议信息)推送至端云推送服务的消息队列,端云推送服务则通过之前建立的云侧SDK与端侧SDK之间的端云推送服务通道,将当前深度链接信息推送至目标终端操作系统的端侧SDK。由此,终端操作系统获取端云推送的目标链接协议信息,与终端操作系统里各个应用的链接协议匹配,匹配成功则唤起目标应用app。

现有的云手机内基于深度链接唤起应用的方案,容易受到安装app数量限制,特别是新用户使用云手机时,云手机自带已安装的app有限,当用户在云手机浏览常用的网页时遇到深度链接需要唤起app浏览完整内容时,用户每次都得安装新应用,带来很不好的体验,容易导致用户流失。

本申请实施例的云手机应用唤起方法,在云手机内未安装深度链接对应的目标应用的情况下,云手机可以通过向终端操作系统获取的终端应用列表信息,查询终端是否已安装目标应用,在确认终端已安装目标应用的情况下,通知终端操作系统唤起目标应用并跳转至目标页,从而用户在云手机即完成唤起终端已有目标应用,无需在云手机内再次安装目标应用,提高云手机浏览各大应用的时效性,从而提升用户体验。完善了云手机APP内深度链接跳转流程场景,弥补了现有云手机深度链接唤起应用的单一模式。

为了实现上述实施例,本申请还提出一种云手机应用唤起装置。

图3为本申请实施例提供的一种云手机应用唤起装置的结构示意图。如图3所示,该云手机应用唤起装置可以包括:信息获取模块301、链接响应模块302、信息确认模块303、信息匹配模块304和应用唤起模块305。

其中,信息获取模块301,用于获取终端应用列表信息;终端应用列表信息包括终端已安装应用的链接协议信息;

链接响应模块302,用于响应于用户点击目标应用的深度链接,获取深度链接对应的目标链接协议信息;

信息确认模块303,用于基于目标链接协议信息,确定云手机内是否已安装目标应用;

信息匹配模块304,用于在确定云手机内未安装目标应用的情况下,基于目标链接协议信息和终端应用列表信息,确定终端是否已安装目标应用;

应用唤起模块305,用于在确定终端已安装目标应用的情况下,通过终端操作系统唤起目标应用,并跳转至深度链接对应的目标页。

进一步地,在本申请实施例的一种可能的实现方式中,信息获取模块301,具体用于:

向终端操作系统发送第一请求;

接收并保存终端操作系统基于第一请求返回的终端应用列表信息。

进一步地,在本申请实施例的一种可能的实现方式中,信息获取模块301在向终端操作系统发送第一请求时,用于:

响应于用户打开云手机,向终端操作系统发送第一请求。

进一步地,在本申请实施例的一种可能的实现方式中,链接响应模块302,具体用于:

响应于用户点击目标应用的深度链接,通过包管理器监听服务监听深度链接;并解析深度链接,获取深度链接对应的目标链接协议信息。

进一步地,在本申请实施例的一种可能的实现方式中,信息确认模块303,具体用于:

通过包管理器监听服务,监听云手机内是否存在目标链接协议信息;

在云手机内不存在目标链接协议信息的情况下,确定云手机内未安装目标应用。

进一步地,在本申请实施例的一种可能的实现方式中,信息匹配模块304,具体用于:

将目标链接协议信息与终端应用列表信息中的终端已安装应用的链接协议信息进行匹配,得到匹配结果;

基于匹配结果,确定终端是否已安装目标应用。

进一步地,在本申请实施例的一种可能的实现方式中,应用唤起模块305在通过终端操作系统唤起目标应用时;用于:

将目标链接协议信息通过云侧SDK与终端的端侧SDK之间的消息通道发送至终端操作系统,以便终端操作系统基于目标链接协议信息,唤起目标应用。

需要说明的是,前述对云手机应用唤起方法实施例的解释说明也适用于该实施例的云手机应用唤起装置,此处不再赘述。

本申请实施例的云手机应用唤起装置,在云手机内未安装深度链接对应的目标应用的情况下,云手机可以通过向终端操作系统获取的终端应用列表信息,查询终端是否已安装目标应用,在确认终端已安装目标应用的情况下,通知终端操作系统唤起目标应用并跳转至目标页,从而用户在云手机即完成唤起终端已有目标应用,无需在云手机内再次安装目标应用,提高云手机浏览各大应用的时效性,从而提升用户体验。

为了实现上述实施例,本申请还提出一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现执行前述实施例所提供的方法。

为了实现上述实施例,本申请还提出一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现前述实施例所提供的方法。

为了实现上述实施例,本申请还提出一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述实施例所提供的方法。

本申请中所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。

需要说明的是,来自用户的个人信息应当被收集用于合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,应在收到用户知情同意后进行此类采集/共享,包括但不限于在用户使用该功能前,通知用户阅读用户协议/用户通知,并签署包括授权相关用户信息的协议/授权。此外,还需采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。

本申请预期可提供用户选择性阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件和/或软件,以防止或阻止对此类个人信息数据的访问。一旦不再需要个人信息数据,通过限制数据收集和删除数据可最小化风险。此外,在适用时,对此类个人信息去除个人标识,以保护用户的隐私。

在前述各实施例描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

技术分类

06120116580826