打开应用的方法、电子设备及管理服务器与流程

文档序号:12071209阅读:146来源:国知局
打开应用的方法、电子设备及管理服务器与流程

本公开涉及应用管理技术领域,尤其涉及一种打开应用的方法、电子设备及管理服务器。



背景技术:

企业信息管理是企业管理者为了实现企业目标,以先进的信息技术为手段,对信息进行采集、整理、加工、传播、存贮和利用的过程,对企业的信息活动过程进行战略规划,对信息活动中的要素进行计划、组织、控制和保护的决策过程,力求资源有效配置、共享管理、协调运作、安全保密,以最少的消耗创造最大的效益。目前,随着智能手机、个人笔记本电脑和平板电脑等移动设备广泛地应用到我们日常的工作和生活中,自带设备办公逐渐兴起。自带设备办公让原本为个人消费者设计的移动终端设备,不断被企业用于承载关键业务及核心应用,这些移动设备成为企业信息主管进行信息管理时必须要考虑的范围。如果考虑不周,这些设备就会成为企业信息安全中最为薄弱的一个环节。为了更好的解决这一问题,移动应用管理(Mobile Application Management,简称MAM)系统由此应运而生。MAM系统针对员工移动设备应用的安全保护、分发、访问、配置、更新、删除等策略和流程。通过企业应用商店控制和推送应用,能集中监控应用的使用情况,对应用设置相应策略以满足企业的规范。当前主流的个人移动智能终端操作系统都不同程度的支持移动应用管理系统。

目前的MAM客户端产品中基本都支持打开第三方应用的功能,以iOS系统为例,现有的MAM客户端在打开第三方应用时,大都是基于应用的URLScheme,需要首先获取到要打开的应用的URLScheme,但是并不是所有的应用都设置有URLScheme,对于没有设置URLScheme的应用,就无法通过MAM客户端打开。



技术实现要素:

本公开的为了解决上述的技术问题,提供一种打开应用的方法、电子设备及管理设备。

为了实现上述目的,根据本公开实施例的第一方面,提供一种打开应用方法,应用于电子设备,所述方法包括:

接收用于启动目标应用的应用启动指令;

响应于所述应用启动指令,确定所述目标应用的BundleID;

根据所述目标应用的BundleID打开所述目标应用。

可选的,在所述接收用于启动目标应用的应用启动指令之前,所述方法还包括:

从管理服务器获取包括所述目标应用在内的一个或多个应用的BundleID,所述一个或多个应用的BundleID是所述管理服务器预先获取的;

所述确定所述目标应用的BundleID包括:在所述一个或多个应用的BundleID中确定所述目标应用的BundleID。

可选的,所述确定所述目标应用的BundleID,包括:

响应于所述应用启动指令,从管理服务器获取所述目标应用的BundleID,所述目标应用的BundleID是所述管理服务器预先获取的。

可选的,在所述接收用于启动目标应用的应用启动指令之前,所述方法还包括:

接收管理服务器推送的包括所述目标应用在内的一个或多个应用的安装文件;

利用所述一个或多个应用的安装文件将所述一个或多个应用安装在所述电子设备上。

可选的,所述从管理服务器获取包括所述目标应用在内的一个或多个应用的BundleID,包括:

当启动移动应用管理MAM客户端时,在已安装在所述电子设备上的应用中确定所述电子设备具有使用权限的所述一个或多个应用;

从所述管理服务器获取包括所述一个或多个应用的BundleID;

通过所述MAM客户端展示所述一个或多个应用。

根据本公开实施例的第二方面,提供一种打开应用的方法,应用于管理服务器,所述方法包括:

通过解析应用的安装文件获取所述安装文件中预先指定的属性信息列表文件;

从所述属性信息列表文件中获取所述应用的BundleID;

将所述BundleID发送至所管理的电子设备。

可选的,所述方法还包括:

将所述应用的安装文件推送至所管理的电子设备,指示所述电子设备利用所述安装文件安装所述应用。

可选的,所述电子设备的操作系统为iOS系统时,所述属性信息列表文件为info.plist文件。

根据本公开实施例的第三方面,提供一种电子设备,所述电子设备包括:

指令接收模块,用于接收用于启动目标应用的应用启动指令;

标识确定模块,用于响应于所述应用启动指令,确定所述目标应用的BundleID;

应用开启模块,用于根据所述目标应用的BundleID打开所述目标应用。

可选的,所述电子设备还包括:

标识获取模块,用于在所述接收用于启动目标应用的应用启动指令之前,从管理服务器获取包括所述目标应用在内的一个或多个应用的BundleID,所述一个或多个应用的BundleID是所述管理服务器预先获取的;

所述标识确定模块,用于在所述一个或多个应用的BundleID中确定所述目标应用的BundleID。

可选的,所述标识确定模块用于:

响应于所述应用启动指令,从管理服务器获取所述目标应用的BundleID,所述目标应用的BundleID是所述管理服务器预先获取的。

可选的,所述电子设备还包括:

文件接收模块,用于在所述接收用于启动目标应用的应用启动指令之前,接收管理服务器推送的包括所述目标应用在内的一个或多个应用的安装文件;

应用安装模块,用于利用所述一个或多个应用的安装文件将所述一个或多个应用安装在所述电子设备上。

可选的,所述标识获取模块,包括:

权限确定子模块,用于当启动移动应用管理MAM客户端时,在已安装在所述电子设备上的应用中确定所述电子设备具有使用权限的所述一个或多个应用;

标识获取子模块,用于从所述管理服务器获取包括所述一个或多个应用的BundleID;

应用展示子模块,用于通过所述MAM客户端展示所述一个或多个应用。

根据本公开实施例的第四方面,提供一种管理服务器,所述管理服务器包括:

属性获取模块,用于通过解析应用的安装文件获取所述安装文件中预先指定的属性信息列表文件;

标识获取模块,用于从所述属性信息列表文件中获取所述应用的BundleID;

标识发送模块,用于将所述BundleID发送至所管理的电子设备。

可选的,所述管理服务器还包括:

安装指示模块,用于将所述应用的安装文件推送至所管理的电子设备,指示所述电子设备利用所述安装文件安装所述应用。

可选的,所述电子设备的操作系统为iOS系统时,所述属性信息列表文件为info.plist文件。

根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行第一方面所述的方法的代码部分。

根据本公开实施例的第六方面,提供一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行第一方面所述的方法。

根据本公开实施例的第七方面,提供一种电子设备,所述电子设备包括:

第六方面中所述的非临时性计算机可读存储介质;以及

一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。

根据本公开实施例的第八方面,提供一种计算机程序产品,所述计算机程序产品包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行第二方面所述的方法的代码部分。

根据本公开实施例的第九方面,提供一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行第二方面所述的方法。

根据本公开实施例的第十方面,提供一种管理设备,所述管理设备包括:

第九方面中所述的非临时性计算机可读存储介质;以及

一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。

本公开实施例提供的技术方案可以包括以下有益效果:

通过在接收用于启动目标应用的应用启动指令后,响应于应用启动指令,确定目标应用的BundleID,再根据该目标应用的BundleID打开该目标应用。由于所有第三方应用几乎都具备的BundleID,并且BundleID可以被解析,因此本公开能够解决相关技术中由于某些第三方应用未设置URLScheme的或者URLScheme无法被解析到导致的无法打开第三方应用的问题,从而能够提高通过MAM客户端打开第三方应用的成功率。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据一示例性实施例示出的一种打开应用的方法的流程图;

图2是根据另一示例性实施例示出的一种打开应用的方法的流程图;

图3是根据又一示例性实施例示出的一种打开应用的方法的流程图;

图4是根据一示例性实施例示出的一种打开应用的方法的流程图;

图5是根据一示例性实施例示出的一种打开应用的方法的流程图;

图6是根据另一示例性实施例示出的一种打开应用的方法的流程图;

图7是根据一示例性实施例示出的一种电子设备的框图;

图8是根据另一示例性实施例示出的一种电子设备的框图;

图9是根据又一示例性实施例示出的一种电子设备的框图;

图10是图8所示实施例示出的一种第一标识获取模块的框图;

图11是根据一示例性实施例示出的一种管理服务器的框图;

图12是根据另一示例性实施例示出的一种管理服务器的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

在介绍本公开提供的应用安装方法之前,首先对本公开所涉及应用场景进行介绍,该应用场景可以包括一电子设备。该电子设备可以为支持应用安装,并且能够支持MAM客户端的电子终端设备,例如可以是智能手机、平板电脑、笔记本电脑、智能电视、智能手表、PDA(Personal Digital Assistant,个人数字助理)、便携计算机等。该应用场景可以包括一管理服务器,该管理服务器可以为能够支持MAM管理平台运行,并且能够运算和储存大量文件操作的提供计算服务的设备,例如可以是高性能PC(Personal Computer,个人电脑)、服务器、集群服务器等。

图1是根据一示例性实施例示出的一种打开应用的方法的流程图,如图1所示,本实施例以该打开应用的方法应用于电子设备为例来说明,该电子设备可以是上述的应用场景中所述的电子设备,参见图1,该打开应用的方法可以包括以下步骤。

在步骤101中,接收用于启动目标应用的应用启动指令。

其中,该应用启动指令可以为用户对MAM客户端的应用列表中的应用进行启动操作(例如用户在MAM客户端的应用列表中点击某一个应用的图标)产生的指令。示例地,该应用列表中的应用可以包括但不限于:该MAM客户端所属的企业内部发布的第三方应用或者是发布在其他应用商店中由用户自己下载的第三方应用。

在步骤102中,响应于应用启动指令,确定目标应用的BundleID。

以电子设备的操作系统为iOS系统为例,每个应用都有属于自己的具有唯一性的一个BundleID,该BundleID通常位于应用的安装文件,在iOS系统中,应用的安装文件通常为IPA(iPhone Application,iPhone应用程序)格式的文件,可以通过解析IPA文件,获取其中的info.plist文件,并从info.plist文件中提取该应用的BundleID。

其中,上述提取该应用的BundleID的过程可以由管理服务器来完成,该电子设备可以提前将包含该目标应用的一个或多个应用的BundleID从管理服务器获取到并存储在本地,当接收到用于启动目标应用的应用启动指令后,从之前已经获取的一个或多个应用的BundleID确定该目标应用的BundleID,并进行步骤103;或者,可以在接收到应用启动指令后,再从管理服务器获取该目标应用的BundleID并进行步骤103。

在步骤103中,根据目标应用的BundleID打开目标应用。

还是以电子设备的操作系统为iOS系统为例,当在获取该目标应用的BundleID后,可以调用iOS系统中的API:openApplicationWithBundleID来打开该目标应用。示例地,利用openApplicationWithBundleID打开目标应用的命令可以包括:

[[LSApplicationWorkspace defaultWorkspace]

openApplicationWithBundleID:bundleID];

其中,bundleID为通过步骤102获取的BundleID。

综上所述,本公开实施例提供的打开应用的方法,通过在接收用于启动目标应用的应用启动指令后,响应于应用启动指令,确定目标应用的BundleID,再根据该目标应用的BundleID打开该目标应用。由于所有第三方应用几乎都具备的BundleID,并且BundleID可以被解析,因此本公开能够解决相关技术中由于某些第三方应用未设置URLScheme的或者URLScheme无法被解析到导致的无法打开第三方应用的问题,从而能够提高通过MAM客户端打开第三方应用的成功率。

图2是根据另一示例性实施例示出的一种打开应用的方法的流程图,如图2所示,在进行步骤101之前,该打开应用的方法可以还包括以下步骤。

在步骤104中,从管理服务器获取包括目标应用在内的一个或多个应用的BundleID,该一个或多个应用的BundleID是管理服务器预先获取的。

其中,该管理服务器的为前文所述应用场景中的管理服务器,该管理服务器中存储有预先获取的多个应用的BundleID,示例地,当电子设备上运行的MAM客户端刷新要展示给用户的应用列表时,可以从该管理服务器获取该应用列表中的每个应用的BundleID。

相应的,上述的步骤102还可以包括:响应于该启动指令,在获取的一个或多个应用的BundleID中确定该目标应用的BundleID。

或者,在另一种实现方式中,在步骤101之前,电子设备不用预先从管理服务器获取该多个应用的BundleID,可以在步骤101之后,响应于该应用启动指令,从管理服务器获取该目标应用的BundleID,也就是说用户点击哪个应用,再获取哪个应用的BundleID。

图3是根据一示例性实施例示出的一种打开应用的方法的流程图,如图3所示,在进行步骤101之前,该打开应用的方法可以还包括以下步骤。

在步骤105中,接收管理服务器推送的包括目标应用在内的一个或多个应用的安装文件。

示例地,在iOS系统中,该一个或多个应用的安装文件为IPA格式的文件,且该一个或多个应用的安装文件为已经在管理服务器中被解析过并得到了每个安装文件的对应应用的BundleID。

在步骤106中,利用该一个或多个应用的安装文件将该一个或多个应用安装在电子设备上。

图4是根据一示例性实施例示出的另一种打开应用的方法的流程图,如图4所示,步骤104所述的从管理服务器获取包括目标应用在内的一个或多个应用的BundleID可以包括以下步骤。

在步骤1041中,当启动移动应用管理MAM客户端时,在已安装在电子设备上的应用中确定该电子设备具有使用权限的一个或多个应用。

在步骤1042中,从管理服务器获取包括上述一个或多个应用的BundleID。

在步骤1043中,通过MAM客户端展示该一个或多个应用。

示例地,MAM客户端在开启后,通常会刷新应用列表,该MAM客户端能够检测该电子设备对该应用的使用权限,其中电子设备对每个应用程序的使用权限可以是从管理服务器获取的。当确定该电子设备具有使用某个应用的权限时,可以在刷新该应用列表,将该应用展示在该应用列表中,以便用户进行选择。

图5是根据另一示例性实施例示出的一种打开应用的方法的流程图,该打开应用的方法应用于管理服务器,该管理服务器可以是上述的应用场景中所述的管理服务器,如图5所示,该方法可以包括以下步骤。

在步骤201中,通过解析应用的安装文件获取该安装文件中预先指定的属性信息列表文件。

以电子设备的操作系统为iOS系统为例,该应用的安装文件为IPA格式的文件(下面简称IPA文件),该属性信息列表文件可以为IPA文件中的info.plist文件。示例地,该管理服务器可以为PC,可以在该PC上可以运行有管理平台,可以将要安装到电子设备的一些应用的安装文件上传至该管理平台,从而该PC可以通过对这些应用的安装文件进行解压,得到该info.plist文件。

在步骤202中,从属性信息列表文件中获取应用的BundleID。

在步骤201中获取的info.plist文件中,BundleID的名称为Bundle identifier,并且该Bundle identifier的值可以以字符串形式标记。例如,目标应用的安装文件中的info.plist文件中的Bundle identifier的值可以为字符串“com.cloudminds-inhouse.mdm”。

在步骤203中,将该BundleID发送至所管理的电子设备。

示例地,管理服务器可以在获取BundleID之后,可以先存储在本地,当电子设备向管理服务器请求后,再将该BundleID发送至该管理服务器所管理的电子设备。

综上所述,本公开实施例提供的打开应用的方法,通过在接收用于启动目标应用的应用启动指令后,响应于应用启动指令,确定目标应用的BundleID,再根据该目标应用的BundleID打开该目标应用。由于所有第三方应用几乎都具备的BundleID,并且BundleID可以被解析,因此本公开能够解决相关技术中由于某些第三方应用未设置URLScheme的或者URLScheme无法被解析到导致的无法打开第三方应用的问题,从而能够提高通过MAM客户端打开第三方应用的成功率。

图6是根据一示例性实施例示出的另一种打开应用的方法的流程图,如图6所示,该方法还可以包括以下步骤。

在步骤204中,将该应用的安装文件推送至所管理的电子设备,指示该电子设备利用该安装文件安装该应用。

图7是根据一示例性实施例示出的一种电子设备的框图,该电子设备700可以用于执行图1至图4任一所述的方法,该装置700可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部,该电子设备可以为上述应用场景中所述的电子设备。参见图7,该电子设备700可以包括:

指令接收模块710,用于接收用于启动目标应用的应用启动指令;

标识确定模块720,用于响应于应用启动指令,确定目标应用的BundleID;

应用开启模块730,用于根据目标应用的BundleID打开该目标应用。

可选的,图8是根据另一示例性实施例示出的一种电子设备的框图,参见图8,该电子设备700还包括:

标识获取模块740,用于在接收用于启动目标应用的应用启动指令之前,从管理服务器获取包括目标应用在内的一个或多个应用的BundleID,该一个或多个应用的BundleID是该管理服务器预先获取的;

标识确定模块720,还用于在该一个或多个应用的BundleID中确定该目标应用的BundleID。

可选的,该标识确定模块720,还用于:

响应于应用启动指令,从管理服务器获取目标应用的BundleID,该目标应用的BundleID是该管理服务器预先获取的。

可选的,图9是根据又一示例性实施例示出的一种电子设备的框图,参见图9,该电子设备700还包括:

文件接收模块750,用于在接收用于启动目标应用的应用启动指令之前,接收管理服务器推送的包括目标应用在内的一个或多个应用的安装文件;

应用安装模块760,用于利用该一个或多个应用的安装文件将该一个或多个应用安装在上述电子设备上。

可选的,图10是图9所示实施例示出的一种标识获取模块的框图,参见图10,该标识获取模块740,包括:

权限确定子模块741,用于当启动移动应用管理MAM客户端时,在已安装在上述电子设备上的应用中确定该电子设备具有使用权限的一个或多个应用;

标识获取子模块742,用于从管理服务器获取包括该一个或多个应用的BundleID;

应用展示子模块743,用于通过MAM客户端展示该一个或多个应用。

图11是根据一示例性实施例示出的一种管理服务器的框图,该管理服务器800可以用于执行图5或图6中所述的方法,该管理服务器800可以通过软件、硬件或者两者的结合实现成为管理服务器的部分或者全部,该管理服务器可以为上述应用场景中所述的管理服务器。参见图11,该管理服务器800可以包括:

属性获取模块810,用于通过解析应用的安装文件获取该安装文件中预先指定的属性信息列表文件;

标识获取模块820,用于从该属性信息列表文件中获取该应用的BundleID;

标识发送模块830,用于将该BundleID发送至所管理的电子设备。

可选的,图12是根据另一示例性实施例示出的一种管理服务器的框图,参见图12,该管理服务器800,还包括:

安装指示模块840,用于将应用的安装文件推送至所管理的电子设备,指示该电子设备利用该安装文件安装该应用。

可选的,电子设备的操作系统为iOS系统时,属性信息列表文件为info.plist文件。

综上所述,本公开实施例提供的打开应用的装置,通过在接收用于启动目标应用的应用启动指令后,响应于应用启动指令,确定目标应用的BundleID,再根据该目标应用的BundleID打开该目标应用。由于所有第三方应用几乎都具备的BundleID,并且BundleID可以被解析,因此本公开能够解决相关技术中由于某些第三方应用未设置URLScheme的或者URLScheme无法被解析到导致的无法打开第三方应用的问题,从而能够提高通过MAM客户端打开第三方应用的成功率。

本公开实施例还提供一种计算机程序产品1,该计算机程序产品1包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由可编程的装置执行时用于执行图1至图4任一所示的方法的代码部分。

本公开实施例还提供一种非临时性计算机可读存储介质2,该非临时性计算机可读存储介质中包括一个或多个程序,该一个或多个程序用于执行图1至图4任一所示的方法。

本公开实施例还提供一种电子设备3,所述电子设备包括:

上述的非临时性计算机可读存储介质2;以及

一个或者多个处理器,用于执行该非临时性计算机可读存储介质2中的程序。

本公开实施例还提供一种计算机程序产品4,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行图5或图6所示的方法。

本公开实施例还提供一种非临时性计算机可读存储介质5,该非临时性计算机可读存储介质5中包括一个或多个程序,该一个或多个程序用于执行图5或图6所示的方法。

根本公开实施例还提供一种管理设备6,该管理设备6包括:

上述的非临时性计算机可读存储介质5;以及

一个或者多个处理器,用于执行该非临时性计算机可读存储介质5中的程序。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

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