CN110780944B - 一种应用权限的启动方法、设备及机器可读存储介质 - Google Patents

一种应用权限的启动方法、设备及机器可读存储介质 Download PDF

Info

Publication number
CN110780944B
CN110780944B CN201911007141.5A CN201911007141A CN110780944B CN 110780944 B CN110780944 B CN 110780944B CN 201911007141 A CN201911007141 A CN 201911007141A CN 110780944 B CN110780944 B CN 110780944B
Authority
CN
China
Prior art keywords
access path
application
interface
permission
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911007141.5A
Other languages
English (en)
Other versions
CN110780944A (zh
Inventor
黄帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhangmen Science and Technology Co Ltd
Original Assignee
Shanghai Zhangmen Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Zhangmen Science and Technology Co Ltd filed Critical Shanghai Zhangmen Science and Technology Co Ltd
Priority to CN201911007141.5A priority Critical patent/CN110780944B/zh
Publication of CN110780944A publication Critical patent/CN110780944A/zh
Application granted granted Critical
Publication of CN110780944B publication Critical patent/CN110780944B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提供一种应用权限的启动方法、设备及机器可读存储介质,该方法包括:获取应用权限的访问路径集合,所述应用权限用于管理应用程序的访问权限,所述访问路径集合包括至少一个访问路径;从所述访问路径集合中选择一个访问路径作为目标访问路径,所述目标访问路径用于访问所述应用权限的启动界面;在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限。通过本申请的技术方案,能够成功访问到应用权限的启动界面,成功为应用程序启动应用权限,提高启动应用权限的成功率。

Description

一种应用权限的启动方法、设备及机器可读存储介质
技术领域
本申请涉及通信技术领域,尤其是涉及一种应用权限的启动方法、设备及机器可读存储介质。
背景技术
为了保护用户隐私,针对终端设备上安装的应用程序(即APP),需要对应用程序进行权限管理,也就是说,为应用程序启动应用权限时,才允许执行相关操作,否则,不允许执行相关操作。例如,为应用程序启动访问敏感用户数据(如联系人和短信等)的应用权限时,终端设备才允许该应用程序访问敏感用户数据,否则,终端设备不允许该应用程序访问敏感用户数据。为应用程序启动系统功能(如相机、位置和互联网等)的应用权限时,终端设备才允许该应用程序使用系统功能,否则,终端设备不允许该应用程序使用系统功能。
当需要为应用程序启动应用权限时,可以采用如下方式:用户对终端设备进行操作,进入应用权限的启动界面,并在应用权限的启动界面为应用程序启动应用权限。但是,在上述方式中,需要用户对终端设备进行操作,并手动为应用程序启动应用权限,应用权限的启动效率很低,用户体验比较差。
发明内容
第一方面,本申请提供一种应用权限的启动方法,应用于终端设备,包括:
获取应用权限的访问路径集合,所述应用权限用于管理应用程序的访问权限,所述访问路径集合包括至少一个访问路径;
从所述访问路径集合中选择一个访问路径作为目标访问路径,所述目标访问路径用于访问所述应用权限的启动界面;
在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限。
作为一个实施例,所述获取应用权限的访问路径集合,包括:
向服务端发送请求消息,所述请求消息用于请求应用权限的访问路径;
接收所述服务端针对所述请求消息返回的响应消息,所述响应消息携带所述应用权限的至少一个访问路径;
根据所述响应消息携带的至少一个访问路径确定所述访问路径集合。
作为一个实施例,所述根据所述响应消息携带的至少一个访问路径确定所述访问路径集合,包括:将所述响应消息携带的至少一个访问路径确定为所述访问路径集合;或者,将所述响应消息携带的至少一个访问路径、以及预先配置的满足预设条件的所述应用权限的访问路径,确定为所述访问路径集合;其中,所述预设条件是指:与所述响应消息携带的各访问路径不同。
作为一个实施例,所述从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:为所述访问路径集合中的各访问路径确定优先级;
根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径。
作为一个实施例,所述为所述访问路径集合中的各访问路径确定优先级,包括:针对所述访问路径集合中的每个访问路径,确定该访问路径是否为所述服务端返回的所述响应消息携带的访问路径;如果是,确定该访问路径的优先级为第一优先级,如果否,则确定该访问路径的优先级为第二优先级;
其中,所述第一优先级高于所述第二优先级。
作为一个实施例,所述根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:
从所述访问路径集合中查找到优先级最高的候选访问路径;
若候选访问路径的数量为1,则将所述候选访问路径确定为目标访问路径;
若候选访问路径的数量大于1,则选择一个候选访问路径作为目标访问路径。
作为一个实施例,所述根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:
按照优先级从高至低的顺序对访问路径集合中的访问路径进行排序;
将排序后的访问路径集合中的首个访问路径确定为当前访问路径;
检查依据当前访问路径是否成功访问到所述应用权限的启动界面;
如果是,将当前访问路径确定为所述目标访问路径;如果否,在当前访问路径不为排序后的访问路径集合中的最后一个访问路径时,将排序后的访问路径集合中当前访问路径的下一访问路径确定为当前访问路径,返回检查依据当前访问路径是否成功访问到所述应用权限的启动界面的操作。
作为一个实施例,所述当前访问路径包括:访问所述启动界面所经由的目标操作界面的界面标识、以及所述目标操作界面上的目标操作节点的节点标识;所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:
根据当前访问路径访问所述界面标识对应的目标操作界面;
若不存在所述界面标识对应的目标操作界面,或者,存在所述界面标识对应的目标操作界面但所述目标操作界面不存在所述节点标识对应的目标操作节点,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
作为一个实施例,所述当前访问路径包括:访问所述启动界面所经由的目标操作界面的界面标识,所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:根据当前访问路径访问所述界面标识对应的目标操作界面;若在所述目标操作界面的停留时长大于第一时长,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
作为一个实施例,若所述目标操作界面是可滑动的操作界面,确定所述目标操作界面的停留时长,包括:检测所述目标操作界面是否有滑动触发;
如果否,则继续累计所述目标操作界面的停留时长;
如果是,则将所述目标操作界面的停留时长设置为指定时长,在指定时长的基础上累计所述目标操作界面的停留时长。
作为一个实施例,所述当前访问路径包括:所述应用权限的启动界面的界面标识,所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:根据当前访问路径访问所述界面标识对应的启动界面;
若在第二时长内未访问到所述界面标识对应的启动界面,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
作为一个实施例,在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限,包括:
获取所述应用权限的权限状态;
若所述权限状态为所述应用权限未启动的状态,则在所述应用权限的启动界面中为所述应用程序启动所述应用权限。
作为一个实施例,所述获取所述应用权限的权限状态,包括:
从所述启动界面获取所述应用权限的权限控制组件的状态;若所述权限控制组件的状态为启动状态,则确定所述应用程序的权限状态为所述应用权限已启动的状态;若所述权限控制组件的状态为未启动状态,则确定所述应用程序的权限状态为所述应用权限未启动的状态;或,
从所述启动界面获取所述应用权限的权限控制组件的描述信息;若所述描述信息表示所述权限控制组件的状态为启动状态,确定所述应用程序的权限状态为所述应用权限已启动的状态;若所述描述信息表示所述权限控制组件的状态为未启动状态,确定所述应用程序的权限状态为所述应用权限未启动的状态。
作为一个实施例,所述获取应用权限的访问路径集合,包括:
获取所述应用权限的权限状态;若所述权限状态为所述应用权限未启动的状态,则获取所述应用权限的访问路径集合。
作为一个实施例,所述获取所述应用权限的权限状态,包括:
从操作系统查询所述应用权限的权限状态;其中,所述操作系统用于维护应用程序与应用权限的权限状态的对应关系;或,
从权限状态文件查询所述应用权限的权限状态;其中,所述权限状态文件用于记录应用程序与应用权限的权限状态的对应关系。
第二方面,本申请提供一种应用权限的启动方法,应用于服务端,包括:
接收终端设备发送的请求消息,所述请求消息用于请求应用权限的访问路径,所述应用权限用于管理应用程序的访问权限;
获取所述应用权限的至少一个访问路径;
向终端设备发送响应消息,所述响应消息携带所述应用权限的至少一个访问路径,以使终端设备根据所述响应消息携带的至少一个访问路径确定访问路径集合,根据所述访问路径集合为所述应用程序启动所述应用权限。
第三方面,本申请提供一种电子设备,处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行所述机器可执行指令,以实现第一方面的应用权限的启动方法,或者,实现第二方面的应用权限的启动方法。
第四方面,本申请提供一种机器可读存储介质,其特征在于,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时,实现第一方面的应用权限的启动方法,或者,实现第二方面的应用权限的启动方法。
由以上技术方案可见,本申请实施例中,终端设备可以获取应用权限的访问路径集合,访问路径集合包括至少一个访问路径,并从访问路径集合中选择一个访问路径作为目标访问路径,在按照目标访问路径访问的应用权限的启动界面中,为应用程序启动应用权限。上述方式由终端设备自动为应用程序启动应用权限,而不需要用户手动为应用程序启动应用权限,减少用户操作工作量,应用权限的启动效率较高,用户体验较好。由于访问路径集合中的访问路径数量较多,从而提供更多的访问路径,能够成功访问到应用权限的启动界面,成功为应用程序启动应用权限,大幅提高启动应用权限的成功率和准确率。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的系统架构示意图;
图2是本申请一种实施方式中的应用权限的启动方法的流程图;
图3是获取应用权限的访问路径集合的一个流程示意图;
图4是本申请一种实施方式中的访问路径的示意图;
图5和图6是从访问路径集合中选择目标访问路径的示意图;
图7A和图7B是应用权限1的启动界面的示意图;
图8是本申请另一种实施方式中的应用权限的启动方法的流程图;
图9A和图9B是本申请一种实施方式中的应用权限的启动装置的结构图;
图9C是本申请一种实施方式中的电子设备的结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1所示,为本申请实施例示出的一种系统架构示意图,该系统架构可以包括服务端101、网络102、终端设备103、终端设备104和终端设备105,当然,图1是以3个终端设备为例,在实际应用中,终端设备的数量可以大于3个。每个终端设备的实现过程相同,后续以终端设备103为例进行说明。
网络102用于在服务端101与终端设备103之间提供通信链路,例如,网络102可以为有线链路、无线链路或者光纤电缆等,对此链路类型不做限制。
终端设备103是具有显示屏的电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机等,对此终端设备103的类型不做限制。
示例性的,终端设备103可以安装大量应用程序(即APP),针对终端设备103安装的每个应用程序,需要对该应用程序进行权限管理,也就是说,为应用程序启动应用权限时,才允许执行相关操作,否则,不允许执行相关操作。例如,为应用程序启动访问敏感用户数据(如联系人和短信等)的应用权限时,才允许该应用程序访问敏感用户数据,否则,不允许该应用程序访问敏感用户数据。为应用程序启动系统功能(如相机、位置和互联网等)的应用权限时,才允许该应用程序使用系统功能,否则,不允许该应用程序使用系统功能。
本申请实施例中,终端设备103能够自动为应用程序启动应用权限,而不需要用户手动为应用程序启动应用权限,减少用户操作工作量,应用权限的启动效率比较高,以下结合具体实施例对应用权限的启动方法进行说明。
参见图2所示,为本申请实施例中示出的一种应用权限的启动方法的实现流程,该方法可以应用于各终端设备,该流程可以包括以下步骤:
步骤201,获取应用权限的访问路径集合,该应用权限用于管理应用程序的访问权限,该访问路径集合可以包括至少一个访问路径。
示例性的,当需要为应用程序1启动应用权限1时,则获取应用权限1的访问路径集合,该应用权限1用于管理应用程序1的访问权限;当需要为应用程序1启动应用权限2时,则获取应用权限2的访问路径集合,该应用权限2用于管理应用程序1的访问权限;当需要为应用程序2启动应用权限1时,则获取应用权限1的访问路径集合,该应用权限1用于管理应用程序2的访问权限,以此类推。为了方便描述,后续以为应用程序1启动应用权限1为例。
示例性的,访问路径集合可以包括从服务端获取的至少一个访问路径。或者,访问路径集合可以包括从服务端获取的至少一个访问路径、以及终端设备预先配置的满足预设条件的访问路径,该预设条件可以是指:与从服务端获取的各访问路径不同。以下对获取应用权限的访问路径集合的过程进行说明。
参见图3所示,为获取应用权限的访问路径集合的一个流程示意图。
步骤2011,向服务端发送请求消息,该请求消息用于请求应用权限的访问路径。例如,该请求消息用于请求应用权限1的访问路径。
步骤2012,接收服务端针对该请求消息返回的响应消息,该响应消息携带该应用权限的至少一个访问路径,如针对应用权限1的至少一个访问路径。
示例性的,服务端在接收到终端设备发送的请求消息后,由于请求消息用于请求应用权限的访问路径,因此,服务端获取应用权限的至少一个访问路径,并向终端设备发送响应消息,该响应消息携带该应用权限的至少一个访问路径。
在一种可能的实施方式中,终端设备在向服务端发送请求消息时,该请求消息可以携带应用权限的标识信息、终端设备的设备信息。服务端在获取应用权限的至少一个访问路径时,可以获取与该标识信息和该设备信息对应的至少一个访问路径。服务端在向终端设备发送响应消息时,该响应消息携带的至少一个访问路径中的每个访问路径,均与该标识信息和该设备信息对应。
示例性的,服务端获取与该标识信息和该设备信息对应的至少一个访问路径,可以包括但不限于:服务端通过该标识信息和该设备信息查询应用权限表,得到与该标识信息和该设备信息对应的至少一个访问路径。其中,该应用权限表用于记录应用权限的标识信息、终端设备的设备信息与访问路径的对应关系。
示例性的,应用权限表的更新过程包括但不限于:服务端每次学习到应用权限的标识信息、终端设备的设备信息与访问路径的对应关系时,在应用权限表中记录当前学习的应用权限的标识信息、设备信息与访问路径的对应关系。
在上述实施例中,终端设备的设备信息可以包括但不限于:终端设备的型号信息和/或操作系统版本,对此设备信息不做限制,所有与终端设备有关的设备信息,均在本申请保护范围之内。例如,运营商、当前联网方式等。
以下结合具体的应用场景,对上述步骤2011和步骤2012进行说明。
针对服务端来说,服务端可以维护应用权限表,该应用权限表用于记录应用权限的标识信息、终端设备的设备信息与访问路径的对应关系,参见表1所示,为应用权限表的示例,应用权限表还可以记录其它内容,对此不做限制。
表1
应用权限的标识信息 终端设备的设备信息 访问路径
应用权限1 设备信息A1 访问路径B1、访问路径B2
应用权限1 设备信息A2 访问路径B1、访问路径B3、访问路径B4
应用权限1 设备信息A3 访问路径B1、访问路径B5
应用权限2 设备信息A1 访问路径C1
在一个例子中,应用权限表是实时动态更新的,也就是说,服务端每次学习到应用权限的标识信息、终端设备的设备信息与访问路径的对应关系时,则在应用权限表中记录当前学习的应用权限的标识信息、设备信息与访问路径的对应关系。这样,服务端可以维护最新的应用权限表,使得应用权限表包括多种设备信息的访问路径,每种设备信息的终端设备均有对应的访问路径。
例如,在时刻A维护表1所示的应用权限表,在时刻A之后,某厂商发布一款新型号的终端设备,或对操作系统进行升级,得到新操作系统版本,假设设备信息为设备信息A4,则服务端可以学习到应用权限的标识信息、终端设备的设备信息与访问路径的对应关系,参见表2所示。或者,
在时刻A之后,若设备信息A1的访问路径发生变化,如增加访问路径B6,则服务端可以学习到应用权限的标识信息、终端设备的设备信息与访问路径的对应关系,参见表3所示。若减少访问路径B2,则服务端可以学习到应用权限的标识信息、终端设备的设备信息与访问路径的对应关系,参见表5所示。
表2
应用权限的标识信息 终端设备的设备信息 访问路径
应用权限1 设备信息A1 访问路径B1、访问路径B2
应用权限1 设备信息A2 访问路径B1、访问路径B3、访问路径B4
应用权限1 设备信息A3 访问路径B1、访问路径B5
应用权限1 设备信息A4 访问路径B1
应用权限2 设备信息A1 访问路径C1
表3
表4
应用权限的标识信息 终端设备的设备信息 访问路径
应用权限1 设备信息A1 访问路径B1
应用权限1 设备信息A2 访问路径B1、访问路径B3、访问路径B4
应用权限1 设备信息A3 访问路径B1、访问路径B5
应用权限2 设备信息A1 访问路径C1
当然,上述只是几个示例,对应用权限表的动态更新过程不做限制。
当终端设备需要为应用程序1启动应用权限1时,则终端设备向服务端发送请求消息,该请求消息可以携带应用权限1的标识信息(如应用权限1)、本终端设备的设备信息(如设备信息A1)。服务端在接收到该请求消息后,通过该标识信息(如应用权限1)和该设备信息(如设备信息A1)查询表1所示的应用权限表,得到访问路径B1和访问路径B2。然后,服务端向终端设备发送响应消息,该响应消息携带针对应用权限1的访问路径B1和访问路径B2。
步骤2013,根据响应消息携带的至少一个访问路径确定访问路径集合。
具体的,终端设备可以将响应消息携带的至少一个访问路径确定为访问路径集合;或者,终端设备将响应消息携带的至少一个访问路径、以及终端设备预先配置的满足预设条件的应用权限的访问路径,确定为访问路径集合;其中,所述预设条件是指:与响应消息携带的各访问路径不同。
在一种可能的实施方式中,终端设备在接收到响应消息后,可以将响应消息携带的至少一个访问路径确定为访问路径集合。例如,假设响应消息携带访问路径B1和访问路径B2,则将访问路径B1和访问路径B2确定为应用权限1的访问路径集合,也就是说,访问路径集合包括访问路径B1和访问路径B2。
在另一种可能的实施方式中,终端设备在安装应用程序1时,可以在终端设备预先配置应用权限1的至少一个访问路径,例如,可以在应用程序1的代码中配置应用权限1的至少一个访问路径,对此不做限制。
基于此,终端设备在接收到响应消息后,可以将响应消息携带的至少一个访问路径、终端设备预先配置的满足预设条件的访问路径,确定为访问路径集合;其中,预设条件是指与响应消息携带的各访问路径不同。例如,假设响应消息携带访问路径B1和访问路径B2,终端设备预先配置访问路径B1和访问路径B3,由于预先配置的访问路径B1与响应消息携带的访问路径B1相同,因此,预先配置的访问路径B1不满足预设条件。由于预先配置的访问路径B3与响应消息携带的各访问路径不同,因此,预先配置的访问路径B3满足预设条件。综上所述,可以将响应消息携带的访问路径B1和访问路径B2、终端设备预先配置的满足预设条件的访问路径B3,确定为应用权限1的访问路径集合,也就是说,访问路径集合包括访问路径B1、访问路径B2和访问路径B3。
综上所述,终端设备可以获取到应用权限1的访问路径集合,该应用权限1用于管理应用程序1的访问权限,该访问路径集合包括从服务端获取的访问路径B1和访问路径B2、终端设备预先配置的满足预设条件的访问路径B3。
在一个例子中,针对访问路径集合中的每个访问路径,该访问路径可以包括访问应用权限的启动界面所经由的目标操作界面(目标操作界面的数量可以为一个或者多个,也可以称为目标操作页面,即Page)的界面标识、目标操作界面上的目标操作节点(目标操作节点的数量可以为一个)的节点标识。
示例性的,针对应用权限的每个访问路径,均用于访问应用权限的启动界面(即用于为应用程序启动该应用权限的界面,为了区分方便,将这个界面称为应用权限的启动界面),但是,针对不同设备信息的终端设备,本终端设备的设备信息与该访问路径可能匹配,也可能不匹配。若本终端设备的设备信息与该访问路径匹配,则通过该访问路径可能能够访问到该应用权限的启动界面,若本终端设备的设备信息与该访问路径不匹配,则通过该访问路径可能无法访问到该应用权限的启动界面。若通过该访问路径能够访问到该应用权限的启动界面,则可以在该应用权限的启动界面为应用程序启动该应用权限。
在通过该访问路径访问到应用权限的启动界面的过程中,可能会经过至少一个操作界面,将这些操作界面称为目标操作界面。而且,在目标操作界面中可以包括至少一个操作节点(Node)。在这些操作节点中,只有一个操作节点用于进入下一个目标操作界面,将这个操作节点称为目标操作节点。
例如,参见图4所示,为访问路径的示意图,该访问路径包括目标操作界面1的界面标识S1、目标操作界面1上的目标操作节点11的节点标识S11、目标操作界面2的界面标识S2、目标操作界面2上的目标操作节点21的节点标识S21、目标操作界面3的界面标识S3、目标操作界面3上的目标操作节点31的节点标识S31。当然,图4只是访问路径的一个示例,对此访问路径不做限制。
基于图4所示的访问路径,先启动与界面标识S1对应的目标操作界面1,目标操作界面1包括多个操作节点,从这些操作节点中选择与节点标识S11对应的目标操作节点11,并对目标操作节点11进行操作(如目标操作节点11可以为一个按钮,对目标操作节点11进行点击操作),从而访问到与界面标识S2对应的目标操作界面2。然后,目标操作界面2包括多个操作节点,从这些操作节点中选择与节点标识S21对应的目标操作节点21,并对目标操作节点21进行操作,从而访问到与界面标识S3对应的目标操作界面3。然后,目标操作界面3包括多个操作节点,从这些操作节点中选择与节点标识S31对应的目标操作节点31,并对目标操作节点31进行操作,从而访问到与应用权限的启动界面。
步骤202,从访问路径集合中选择一个访问路径作为目标访问路径,该目标访问路径用于访问应用权限的启动界面,也就是说,在通过目标访问路径访问应用权限的启动界面时,能够成功访问到该应用权限的启动界面。
示例性的,针对访问路径集合中的每个访问路径,均用于访问应用权限的启动界面,但是,针对不同设备信息的终端设备,本终端设备的设备信息与该访问路径可能匹配,也可能不匹配。若本终端设备的设备信息与该访问路径匹配,则通过该访问路径可能能够成功访问到该应用权限的启动界面,为了区分方便,将能够成功访问到该应用权限的启动界面的访问路径称为目标访问路径。若本终端设备的设备信息与该访问路径不匹配,则通过该访问路径可能无法成功访问到该应用权限的启动界面,即这个访问路径不是目标访问路径。
参见图5所示,为从访问路径集合中选择目标访问路径的一个流程示意图。
步骤2021,为访问路径集合中的各访问路径确定优先级。
具体的,针对访问路径集合中的每个访问路径,确定该访问路径是否为服务端返回的响应消息携带的访问路径;如果是,则确定该访问路径的优先级为第一优先级,如果否,则确定该访问路径的优先级为第二优先级;其中,第一优先级高于第二优先级。例如,假设数值越大,则说明优先级越高,数值越小,则说明优先级越低,则第一优先级可以为数值2,第二优先级可以为数值1。
例如,参见上述实施例,访问路径集合包括访问路径B1、访问路径B2和访问路径B3,针对访问路径集合中的访问路径B1,由于访问路径B1是服务端返回的响应消息携带的访问路径,因此,确定访问路径B1的优先级为第一优先级。针对访问路径集合中的访问路径B2,由于访问路径B2是服务端返回的响应消息携带的访问路径,因此,确定访问路径B2的优先级为第一优先级。针对访问路径集合中的访问路径B3,由于访问路径B3不是服务端返回的响应消息携带的访问路径,因此,确定访问路径B3的优先级为第二优先级。
综上所述,访问路径B1的优先级为第一优先级,访问路径B2的优先级为第一优先级,访问路径B3的优先级为第二优先级,第一优先级高于第二优先级。
步骤2022,根据访问路径集合中的各访问路径的优先级,从该访问路径集合中选择一个访问路径作为目标访问路径。示例性的,针对步骤2022,可以采用如下方式从访问路径集合中选择一个访问路径作为目标访问路径:
方式一、从访问路径集合中查找到优先级最高的候选访问路径。若该候选访问路径的数量为1,则可以将该候选访问路径确定为目标访问路径。若该候选访问路径的数量大于1,则选择一个候选访问路径作为目标访问路径。
例如,访问路径集合包括访问路径B1、访问路径B2和访问路径B3,访问路径B1的优先级为第一优先级,访问路径B2的优先级为第一优先级,访问路径B3的优先级为第二优先级,基于此,从访问路径集合中查找到的优先级最高的候选访问路径,可以为访问路径B1和访问路径B2。可以从访问路径B1和访问路径B2中选择一个访问路径作为目标访问路径。例如,随机将访问路径B1作为目标访问路径,或者,随机将访问路径B2作为目标访问路径。又例如,基于某种选择策略(对此策略不做限制),将访问路径B1作为目标访问路径,或者,将访问路径B2作为目标访问路径,对此选择方式不做限制。
方式二、针对步骤2022,可以采用如下方式从访问路径集合中选择目标访问路径,参见图6所示,为从访问路径集合中选择目标访问路径的示意图。
步骤20221,按照优先级从高至低的顺序对访问路径集合中的访问路径进行排序。其中,当访问路径集合中的至少两个访问路径的优先级相同时,则所述至少两个访问路径的排序顺序,本实施例中不做限制,可以任意设置。
例如,访问路径集合包括访问路径B1、访问路径B2和访问路径B3,访问路径B1的优先级为第一优先级,访问路径B2的优先级为第一优先级,访问路径B3的优先级为第二优先级,由于第一优先级高于第二优先级,因此,访问路径B1位于访问路径B3的前面,访问路径B2也位于访问路径B3的前面。
由于访问路径B1的优先级与访问路径B2的优先级相同,因此,访问路径B1可以位于访问路径B2的前面,访问路径B2也可以位于访问路径B1的前面。
综上所述,假设对访问路径集合中的访问路径进行排序后,访问路径集合依次包括:访问路径B2、访问路径B1、访问路径B3。当然,上述只是示例,对此不做限制,如还可以依次包括:访问路径B1、访问路径B2、访问路径B3。
步骤20222,将排序后的访问路径集合中的首个访问路径确定为当前访问路径。例如,排序后的访问路径集合依次包括:访问路径B2、访问路径B1、访问路径B3,因此,将首个访问路径(即访问路径B2)确定为当前访问路径。
步骤20223,检查依据当前访问路径是否成功访问到应用权限的启动界面。
如果是,则执行步骤20224;如果否,则执行步骤20225。
步骤20224,将当前访问路径确定为目标访问路径。
步骤20225,在当前访问路径不为排序后的访问路径集合中的最后一个访问路径时,将排序后的访问路径集合中当前访问路径的下一访问路径确定为当前访问路径,返回执行步骤20223。在当前访问路径为排序后的访问路径集合中的最后一个访问路径时,则说明访问路径集合中不存在目标访问路径,结束目标访问路径的选择过程,在此情况下,无法为应用程序启动应用权限。
例如,排序后的访问路径集合依次包括:访问路径B2、访问路径B1、访问路径B3,因此,将访问路径B2确定为当前访问路径。检查依据访问路径B2是否成功访问到应用权限的启动界面。如果是,则将访问路径B2确定为目标访问路径。如果否,由于访问路径B2不为访问路径集合中的最后一个访问路径,因此,将访问路径B2的下一访问路径(即访问路径B1)确定为当前访问路径。
在将访问路径B1确定为当前访问路径之后,检查依据访问路径B1是否成功访问到应用权限的启动界面。如果是,则将访问路径B1确定为目标访问路径。如果否,由于访问路径B1不为访问路径集合中的最后一个访问路径,因此,将访问路径B1的下一访问路径(即访问路径B3)确定为当前访问路径。
然后,检查依据访问路径B3是否成功访问到应用权限的启动界面。如果是,则将访问路径B3确定为目标访问路径。如果否,由于访问路径B3为访问路径集合中的最后一个访问路径,因此,结束目标访问路径的选择过程。
当然,上述方式一和方式二只是选择目标访问路径的示例,对此选择方式不做限制。例如,可以不需要考虑访问路径集合中的各访问路径的优先级,即不对访问路径集合中的访问路径进行排序,直接采用如下方式进行处理:
将访问路径集合中的首个访问路径确定为当前访问路径,检查依据当前访问路径是否成功访问到应用权限的启动界面。如果是,则将当前访问路径确定为目标访问路径。如果否,且当前访问路径不为访问路径集合中的最后一个访问路径,则将访问路径集合中当前访问路径的下一访问路径确定为当前访问路径,并返回执行检查依据当前访问路径是否成功访问到应用权限的启动界面的操作。如果否,且当前访问路径为访问路径集合中的最后一个访问路径,则说明访问路径集合中不存在目标访问路径,结束目标访问路径的选择过程。
例如,假设访问路径集合依次包括:访问路径B3、访问路径B1、访问路径B2,则先将访问路径B3确定为当前访问路径。检查依据访问路径B2是否成功访问到应用权限的启动界面。如果是,则将访问路径B3确定为目标访问路径。
如果否,则将访问路径B1确定为当前访问路径,检查依据访问路径B1是否成功访问到应用权限的启动界面。如果是,则将访问路径B1确定为目标访问路径。如果否,则将访问路径B2确定为当前访问路径。然后,检查依据访问路径B2是否成功访问到应用权限的启动界面。如果是,则将访问路径B2确定为目标访问路径。如果否,则结束目标访问路径的选择过程。
在一种可能的实施方式中,针对步骤20223,为了检查依据当前访问路径是否成功访问到应用权限的启动界面,则可以采用如下方式实现:
方式1、当前访问路径可以包括但不限于:访问应用权限的启动界面所经由的目标操作界面的界面标识、以及该目标操作界面上的目标操作节点的节点标识。基于此,终端设备可以根据当前访问路径访问该界面标识对应的目标操作界面;若不存在该界面标识对应的目标操作界面,或者,存在该界面标识对应的目标操作界面,但是,该目标操作界面不存在该节点标识对应的目标操作节点,则可以确定依据当前访问路径无法成功访问到该应用权限的启动界面。否则,可以确定依据当前访问路径成功访问到该应用权限的启动界面。
例如,参见图4所示,假设当前访问路径包括目标操作界面1的界面标识S1、目标操作界面1上的目标操作节点11的节点标识S11、目标操作界面2的界面标识S2、目标操作界面2上的目标操作节点21的节点标识S21、目标操作界面3的界面标识S3、目标操作界面3上的目标操作节点31的节点标识S31。
若终端设备根据当前访问路径访问目标操作界面1时,不存在与界面标识S1对应的目标操作界面1,或者,虽然存在与界面标识S1对应的目标操作界面1,但是,该目标操作界面1不存在与节点标识S11对应的目标操作节点11,则可以确定依据当前访问路径无法成功访问到应用权限的启动界面。
若终端设备根据当前访问路径访问目标操作界面2(比如说,通过对目标操作节点11进行点击操作,从而访问目标操作界面2)时,不存在与界面标识S2对应的目标操作界面2,或者,虽然存在与界面标识S2对应的目标操作界面2,但是,该目标操作界面2不存在与节点标识S21对应的目标操作节点21,则可以确定依据当前访问路径无法成功访问到应用权限的启动界面。
若终端设备根据当前访问路径访问目标操作界面3(比如说,通过对目标操作节点21进行点击操作,从而访问目标操作界面3)时,不存在与界面标识S3对应的目标操作界面3,或者,虽然存在与界面标识S3对应的目标操作界面3,但是,该目标操作界面3不存在与节点标识S31对应的目标操作节点31,则可以确定依据当前访问路径无法成功访问到应用权限的启动界面。
若存在与界面标识S1对应的目标操作界面1、且目标操作界面1存在与节点标识S11对应的目标操作节点11,且对目标操作节点11进行操作后,能够访问与界面标识S2对应的目标操作界面2、且目标操作界面2存在与节点标识S21对应的目标操作节点21,且对目标操作节点21进行操作后,能够访问与界面标识S3对应的目标操作界面3、且目标操作界面3存在与节点标识S31对应的目标操作节点31,则确定依据当前访问路径成功访问到应用权限的启动界面。
方式2、当前访问路径可以包括但不限于:访问应用权限的启动界面所经由的目标操作界面的界面标识。基于此,终端设备可以根据当前访问路径访问该界面标识对应的目标操作界面;若在该目标操作界面的停留时长大于第一时长,则可以确定依据当前访问路径无法成功访问到该应用权限的启动界面。否则,可以确定依据当前访问路径成功访问到该应用权限的启动界面。示例性的,第一时长可以根据经验进行配置,如3秒、4秒等,对此不做限制。
例如,参见图4所示,假设当前访问路径包括目标操作界面1的界面标识S1、目标操作界面2的界面标识S2、目标操作界面3的界面标识S3。
根据当前访问路径访问到界面标识S1对应的目标操作界面1时,对目标操作界面1的停留时长进行统计,若目标操作界面1的停留时长大于第一时长时,仍然未根据当前访问路径访问到界面标识S2对应的目标操作界面2,确定依据当前访问路径无法成功访问到应用权限的启动界面。若目标操作界面1的停留时长未大于第一时长时,根据当前访问路径访问到界面标识S2对应的目标操作界面2,对目标操作界面2的停留时长进行统计。若目标操作界面2的停留时长大于第一时长时,仍然未根据当前访问路径访问到界面标识S3对应的目标操作界面3,确定依据当前访问路径无法成功访问到应用权限的启动界面。若目标操作界面2的停留时长未大于第一时长时,根据当前访问路径访问到界面标识S3对应的目标操作界面3,对目标操作界面3的停留时长进行统计。若目标操作界面3的停留时长大于第一时长时,仍然未根据当前访问路径访问到应用权限的启动界面,确定依据当前访问路径无法成功访问到应用权限的启动界面。若目标操作界面3的停留时长未大于第一时长时,根据当前访问路径访问到应用权限的启动界面,确定依据当前访问路径成功访问到应用权限的启动界面。
综上所述,通过对目标操作界面的停留时长进行统计,在目标操作界面的停留时长大于第一时长时,若未根据当前访问路径访问到另一个目标操作界面,就确定依据当前访问路径无法成功访问到应用权限的启动界面,即跳过当前访问路径的处理过程,执行下一个访问路径的处理过程,从而避免因某一路径执行失败影响整体执行速度,可以快速找到目标访问路径,提高处理效率。
在方式2中,若目标操作界面是可滑动的操作界面,则确定目标操作界面的停留时长,可以包括:检测目标操作界面是否有滑动触发;如果否,则继续累计目标操作界面的停留时长;如果是,则将目标操作界面的停留时长设置为指定时长(如0),在指定时长的基础上累计目标操作界面的停留时长。
例如,根据当前访问路径访问到界面标识S1对应的目标操作界面1时,对目标操作界面1的停留时长进行统计。在统计到停留时长为时长A(时长A不大于第一时长)时,若检测到目标操作界面1没有滑动触发,则继续累计目标操作界面1的停留时长(即在时长A的基础上继续累计)。若检测到目标操作界面1有滑动触发,则将目标操作界面1的停留时长设置为0,并重新累计目标操作界面1的停留时长,即从0开始重新累计目标操作界面1的停留时长。
综上所述,在目标操作界面是可滑动的操作界面,且目标操作节点位于目标操作界面的下方时,如果检测不到目标操作节点,则可以对目标操作界面进行滑动操作。每次滑动目标操作界面时,将目标操作界面的停留时长设置为0,直到通过目标操作节点进入到下一个目标操作界面,或者,目标操作界面的停留时长大于第一时长时,仍然未通过目标操作节点进入到下一个目标操作界面,确定依据当前访问路径无法成功访问到应用权限的启动界面。
方式3、当前访问路径可以包括但不限于:应用权限的启动界面的界面标识。基于此,终端设备可以根据当前访问路径访问该界面标识对应的启动界面。若在第二时长内未访问到该界面标识对应的启动界面,则可以确定依据当前访问路径无法成功访问到该应用权限的启动界面。若在第二时长内访问到该界面标识对应的启动界面,则可以确定依据当前访问路径成功访问到该应用权限的启动界面。示例性的,该第二时长可以根据经验进行配置,且该第二时长可以大于第一时长,如10秒、11秒等,对此第二时长不做限制。
例如,参见图4所示,针对每个访问路径(如当前访问路径)来说,该访问路径包括目标操作界面1的界面标识S1、目标操作界面1上的目标操作节点11的节点标识S11、目标操作界面2的界面标识S2、目标操作界面2上的目标操作节点21的节点标识S21、目标操作界面3的界面标识S3、目标操作界面3上的目标操作节点31的节点标识S31。在此基础上,访问路径还可以包括应用权限的启动界面的界面标识,如界面标识S4,以及,启动界面上的目标操作节点的节点标识,如节点标识S41。为了区分方便,在后续实施例中,将启动界面上的目标操作节点称为应用权限的权限控制组件(如启动界面上的按钮)。
基于此,先启动与界面标识S1对应的目标操作界面1,从目标操作界面1的多个操作节点中选择与节点标识S11对应的目标操作节点11,对目标操作节点11进行操作,访问到与界面标识S2对应的目标操作界面2。从目标操作界面2的多个操作节点中选择与节点标识S21对应的目标操作节点21,对目标操作节点21进行操作,访问到与界面标识S3对应的目标操作界面3。从目标操作界面3的多个操作节点中选择与节点标识S31对应的目标操作节点31,对目标操作节点31进行操作,访问到与界面标识S4对应的应用权限的启动界面。
至此,成功访问到与界面标识S4对应的应用权限的启动界面。在上述过程中,终端设备可以对访问到与界面标识S4对应的启动界面的时长进行统计。若在第二时长内未访问到界面标识S4对应的启动界面,则确定依据当前访问路径无法成功访问到应用权限的启动界面。若在第二时长内访问到界面标识S4对应的启动界面,则确定依据当前访问路径成功访问到应用权限的启动界面。
综上所述,通过对时长进行统计,在第二时长内未访问到启动界面时,就确定依据当前访问路径无法成功访问到应用权限的启动界面,即跳过当前访问路径的处理过程,执行下一个访问路径的处理过程,从而避免因某一路径执行失败影响整体执行速度,可以快速找到目标访问路径,提高处理效率。
方式4、根据当前访问路径访问目标操作界面时,若不存在目标操作界面,或者,存在目标操作界面,但是,该目标操作界面不存在目标操作节点,则确定依据当前访问路径无法成功访问到应用权限的启动界面。或者,根据当前访问路径访问目标操作界面时,若在该目标操作界面的停留时长大于第一时长,则确定依据当前访问路径无法成功访问到应用权限的启动界面。或者,根据当前访问路径访问应用权限的启动界面时,若在第二时长内未访问到应用权限的启动界面,则确定依据当前访问路径无法成功访问到应用权限的启动界面。
示例性的,在根据当前访问路径访问目标操作界面时,若存在目标操作界面,该目标操作界面存在目标操作节点;并且,在根据当前访问路径访问目标操作界面时,若在该目标操作界面的停留时长不大于第一时长;并且,在根据当前访问路径访问应用权限的启动界面时,若在第二时长内访问到应用权限的启动界面,则确定依据当前访问路径成功访问到应用权限的启动界面。
方式4的具体实现,可以参见方式1-方式3,在此不再重复赘述。
当然,上述方式1-方式4只是几个示例,对此不做限制。
步骤203,在按照目标访问路径访问的应用权限的启动界面中,为应用程序启动应用权限。例如,在应用权限的启动界面中,可以对应用权限的权限控制组件进行操作(如点击操作),从而为应用程序启动应用权限。
示例性的,参见上述实施例,已经介绍能够通过目标访问路径成功访问到应用权限的启动界面,因此,可以在按照目标访问路径访问的应用权限的启动界面中,为应用程序启动应用权限。例如,目标访问路径可以包括启动界面上的目标操作节点(即权限控制组件)的节点标识,因此,确定与该节点标识对应的权限控制组件(如启动界面上的按钮),并对该权限控制组件进行操作。
例如,参见图4所示,假设目标访问路径包括目标操作界面1的界面标识S1、目标操作节点11的节点标识S11、目标操作界面2的界面标识S2、目标操作节点21的节点标识S21、目标操作界面3的界面标识S3、目标操作节点31的节点标识S31、应用权限的启动界面的界面标识S4、权限控制组件的节点标识S41。基于此目标访问路径,启动目标操作界面1,对目标操作界面1的目标操作节点11进行操作,访问目标操作界面2。对目标操作界面2的目标操作节点21进行操作,访问目标操作界面3。对目标操作界面3的目标操作节点31进行操作,访问界面标识S4对应的启动界面。在应用权限的启动界面中,对节点标识S41对应的权限控制组件进行操作,从而为应用程序启动应用权限。
在一种可能的实施方式中,在按照目标访问路径访问的应用权限的启动界面中,为应用程序启动应用权限,可以包括但不限于:获取应用权限的权限状态。若该权限状态为应用权限未启动的状态,则在应用权限的启动界面中为应用程序启动应用权限。在另一种可能的实施方式中,获取应用权限的权限状态之后,还可以包括:若该权限状态为应用权限启动的状态,则不需要在应用权限的启动界面中为应用程序启动应用权限,结束应用权限的启动流程。
具体的,在按照目标访问路径访问到应用权限的启动界面后,终端设备可以获取应用权限的权限状态。若该权限状态为应用权限启动的状态,则说明已经为应用程序启动该应用权限,因此,结束应用权限的启动流程。或者,若该权限状态为应用权限未启动的状态,则说明没有为应用程序启动该应用权限,因此,在应用权限的启动界面中为应用程序启动该应用权限。
在一种可能的实施方式中,获取应用权限的权限状态,可以包括但不限于:
方式一、通过界面按钮状态获取应用权限的权限状态。具体的,从应用权限的启动界面获取应用权限的权限控制组件的状态。若权限控制组件的状态为启动状态,确定应用程序的权限状态为应用权限已启动的状态;若权限控制组件的状态为未启动状态,确定应用程序的权限状态为应用权限未启动的状态。
参见图7A和图7B所示,为应用权限1的启动界面的示意图,在应用权限1的启动界面中,可以包括多个应用程序的权限控制组件,如应用程序1的权限控制组件,应用程序2的权限控制组件,应用程序3的权限控制组件。
假设需要为应用程序1启动应用权限1,则参见图7A所示,应用权限1的权限控制组件的状态为启动状态,因此,确定应用程序1的权限状态为应用权限1已启动的状态。参见图7B所示,应用权限1的权限控制组件的状态为未启动状态,因此,确定应用程序1的权限状态为应用权限1未启动的状态。
方式二、通过界面按钮周边文案获取应用权限的权限状态。具体的,从应用权限的启动界面获取应用权限的权限控制组件的描述信息。若该描述信息用于表示该权限控制组件的状态为启动状态,则可以确定应用程序的权限状态为应用权限已启动的状态;若该描述信息用于表示该权限控制组件的状态为未启动状态,则可以确定应用程序的权限状态为应用权限未启动的状态。
示例性的,在应用权限的启动界面中,可以包括多个应用程序的权限控制组件,并包括这些权限控制组件的描述信息(也可以称为周边文案),如应用程序1的权限控制组件的描述信息,应用程序2的权限控制组件的描述信息等。
其中,该描述信息用于表示权限控制组件的状态。例如,若应用程序1的权限控制组件的描述信息,用于表示权限控制组件的状态为启动状态,则终端设备可以确定应用程序1的权限状态为应用权限已启动的状态。若应用程序1的权限控制组件的描述信息,用于表示权限控制组件的状态为未启动状态,则终端设备可以确定应用程序1的权限状态为应用权限未启动的状态。
在一个实施例中,终端设备可以具有辅助功能,终端设备可以通过辅助功能,执行上述步骤201-步骤203的相关流程。当然,辅助功能只是一个示例,对此不做限制,只要是终端设备能够实现上述步骤即可,在此不再赘述。
由以上技术方案可见,本申请实施例中,终端设备可以获取应用权限的访问路径集合,访问路径集合包括至少一个访问路径,并从访问路径集合中选择一个访问路径作为目标访问路径,在按照目标访问路径访问的应用权限的启动界面中,为应用程序启动应用权限。上述方式由终端设备自动为应用程序启动应用权限,而不需要用户手动为应用程序启动应用权限,减少用户操作工作量,应用权限的启动效率较高,用户体验较好。由于访问路径集合中的访问路径数量较多,从而提供更多的访问路径,能够成功访问到应用权限的启动界面,成功为应用程序启动应用权限,大幅提高启动应用权限的成功率和准确率。由于访问路径集合中的访问路径数量较多,从而为多种设备信息的终端设备提供正确的访问路径,提高启动应用权限的成功率。通过为服务端下发的访问路径设置比较高的优先级,从而优先采用服务端下发的访问路径,且服务端下发的访问路径的准确性比较高,从而尽快找到正确的目标访问路径,提高处理速度。
在一种可能的实施方式中,针对步骤201,获取应用权限的访问路径集合,可以包括但不限于:获取应用权限的权限状态。若该权限状态为应用权限未启动的状态,则获取应用权限的访问路径集合。在另一种可能的实施方式中,获取应用权限的权限状态之后,还可以包括:若该权限状态为应用权限启动的状态,则不需要获取应用权限的访问路径集合,即不再执行上述步骤201-步骤203。
具体的,可以先获取应用权限的权限状态。若该权限状态为应用权限启动的状态,则说明已经为应用程序启动该应用权限,因此,结束应用权限的启动流程,不再执行上述步骤201-步骤203。或者,若该权限状态为应用权限未启动的状态,则说明没有为应用程序启动该应用权限,因此,执行步骤201。
在一种可能的实施方式中,获取应用权限的权限状态,可以包括但不限于:
方式1、通过系统公开接口(即操作系统对外提供的接口)获取应用权限的权限状态。具体的,可以从操作系统查询应用权限的权限状态。其中,操作系统用于维护应用程序与应用权限的权限状态的对应关系。
例如,操作系统用于维护应用程序1与应用权限1的权限状态(如应用权限已启动的状态或应用权限未启动的状态)的对应关系、应用程序2与应用权限1的权限状态的对应关系,以此类推。假设为应用程序1启动应用权限1,则从操作系统查询应用程序1与应用权限1的权限状态的对应关系,继而确定应用权限1的权限状态,如应用权限1已启动的状态或应用权限1未启动的状态。
方式2、通过权限状态文件(如服务接口或者应用数据库)获取应用权限的权限状态。具体的,可以从权限状态文件查询应用权限的权限状态。其中,该权限状态文件用于记录应用程序与应用权限的权限状态的对应关系。
例如,在应用程序1的代码文件中,可以包括应用程序1与应用权限1的权限状态(如应用权限已启动的状态或应用权限未启动的状态)的对应关系、应用程序1与应用权限2的权限状态的对应关系,以此类推。假设为应用程序1启动应用权限1,则从服务接口(如应用程序1的远程服务接口,这个远程服务接口用于调用应用程序1的代码文件中的权限数据,对此服务接口的类型不做限制)查询应用程序1与应用权限1的权限状态的对应关系,继而确定应用权限1的权限状态,如应用权限1已启动的状态或应用权限1未启动的状态。
又例如,在应用数据库(如权限管理应用数据库等,对此应用数据库的类型不做限制)中,可以包括应用程序1与应用权限1的权限状态(如应用权限已启动的状态或应用权限未启动的状态)的对应关系、应用程序2与应用权限1的权限状态的对应关系,以此类推。假设为应用程序1启动应用权限1,则从应用数据库查询应用程序1与应用权限1的权限状态的对应关系,继而确定应用权限1的权限状态,如应用权限1已启动的状态或应用权限1未启动的状态。
示例性的,若步骤201已获取应用权限的权限状态,则执行到步骤203时,在按照目标访问路径访问到应用权限的启动界面后,可以不获取应用权限的权限状态。若步骤201未获取应用权限的权限状态,则执行到步骤203时,在按照目标访问路径访问到应用权限的启动界面后,可以获取应用权限的权限状态。
基于与上述方法同样的申请构思,本申请实施例还提出另一种应用权限的启动方法,可以应用于服务端,参见图8所示,为该方法的流程示意图。
步骤801,接收终端设备发送的请求消息,该请求消息用于请求应用权限的访问路径,该应用权限用于管理应用程序的访问权限。
步骤802,获取该应用权限的至少一个访问路径。
在一种可能的实施方式中,该请求消息携带该应用权限的标识信息、该终端设备的设备信息;获取该应用权限的至少一个访问路径,可以包括但不限于:获取与该标识信息和该设备信息对应的至少一个访问路径。
具体的,可以通过该标识信息和该设备信息查询应用权限表,得到与该标识信息和该设备信息对应的至少一个访问路径;其中,该应用权限表可以用于记录应用权限的标识信息、设备信息与访问路径的对应关系。
其中,应用权限表的更新过程为:服务端每次学习到应用权限的标识信息、设备信息与访问路径的对应关系时,则可以在应用权限表中记录当前学习的应用权限的标识信息、设备信息与访问路径的对应关系。
步骤803,向终端设备发送响应消息,该响应消息携带该应用权限的至少一个访问路径,以使终端设备根据该响应消息携带的至少一个访问路径确定访问路径集合,并根据该访问路径集合为该应用程序启动该应用权限。
步骤801-步骤803的处理流程,可以参见上述实施例,在此不再赘述。
基于与上述方法同样的申请构思,本申请实施例还提出一种应用权限的启动装置,应用于终端设备,如图9A所示,为所述装置的结构图,所述装置包括:
获取模块911,用于获取应用权限的访问路径集合,所述应用权限用于管理应用程序的访问权限,所述访问路径集合包括至少一个访问路径;
选择模块912,用于从所述访问路径集合中选择一个访问路径作为目标访问路径,所述目标访问路径用于访问所述应用权限的启动界面;
启动模块913,用于在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限。
所述获取模块911具体用于:向服务端发送请求消息,所述请求消息用于请求应用权限的访问路径;接收所述服务端针对所述请求消息返回的响应消息,所述响应消息携带所述应用权限的至少一个访问路径;根据所述响应消息携带的至少一个访问路径确定所述访问路径集合。
所述获取模块911根据所述响应消息携带的至少一个访问路径确定所述访问路径集合时具体用于:将所述响应消息携带的至少一个访问路径确定为所述访问路径集合;或者,将所述响应消息携带的至少一个访问路径、以及预先配置的满足预设条件的所述应用权限的访问路径,确定为所述访问路径集合;
其中,所述预设条件是指:与所述响应消息携带的各访问路径不同。
所述选择模块912具体用于:为所述访问路径集合中的各访问路径确定优先级;根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径。
所述选择模块912根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径时具体用于:
从所述访问路径集合中查找到优先级最高的候选访问路径;
若候选访问路径的数量为1,则将所述候选访问路径确定为目标访问路径;
若候选访问路径的数量大于1,则选择一个候选访问路径作为目标访问路径。
所述选择模块912根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径时具体用于:
按照优先级从高至低的顺序对访问路径集合中的访问路径进行排序;
将排序后的访问路径集合中的首个访问路径确定为当前访问路径;
检查依据当前访问路径是否成功访问到所述应用权限的启动界面;
如果是,将当前访问路径确定为所述目标访问路径;如果否,在当前访问路径不为排序后的访问路径集合中的最后一个访问路径时,将排序后的访问路径集合中当前访问路径的下一访问路径确定为当前访问路径,返回检查依据当前访问路径是否成功访问到所述应用权限的启动界面的操作。
所述启动模块913具体用于:获取所述应用权限的权限状态;
若所述权限状态为所述应用权限未启动的状态,则在所述应用权限的启动界面中为所述应用程序启动所述应用权限。
基于与上述方法同样的申请构思,本申请实施例还提出一种应用权限的启动装置,应用于服务端,如图9B所示,为所述装置的结构图,所述装置包括:
接收模块921,用于接收终端设备发送的请求消息,所述请求消息用于请求应用权限的访问路径,所述应用权限用于管理应用程序的访问权限;
获取模块922,用于获取所述应用权限的至少一个访问路径;
发送模块923,用于向终端设备发送响应消息,所述响应消息携带所述应用权限的至少一个访问路径,以使终端设备根据响应消息携带的至少一个访问路径确定访问路径集合,根据访问路径集合为所述应用程序启动所述应用权限。
基于与上述方法同样的申请构思,本申请实施例中还提出一种电子设备(如上述实施例的终端设备或者服务端),本申请实施例提供的电子设备,从硬件层面而言,硬件架构示意图可以参见图9C所示。可以包括:处理器931、机器可读存储介质932,所述机器可读存储介质932存储有能够被所述处理器931执行的机器可执行指令;所述处理器931用于执行机器可执行指令,以实现本申请上述示例公开的方法,即上述实施例公开的应用权限的启动方法。
基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,其中,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的应用权限的启动方法。
示例性的,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (15)

1.一种应用权限的启动方法,其特征在于,应用于终端设备,包括:
获取应用权限的访问路径集合,所述应用权限用于管理应用程序的访问权限,所述访问路径集合包括至少一个访问路径;
从所述访问路径集合中选择一个访问路径作为目标访问路径,所述目标访问路径用于访问所述应用权限的启动界面;
在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限;
其中,所述从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:为所述访问路径集合中的各访问路径确定优先级;根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径;
其中,所述根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:按照优先级从高至低的顺序对访问路径集合中的访问路径进行排序;将排序后的访问路径集合中的首个访问路径确定为当前访问路径;检查依据当前访问路径是否成功访问到所述应用权限的启动界面;如果是,将当前访问路径确定为所述目标访问路径;如果否,在当前访问路径不为排序后的访问路径集合中的最后一个访问路径时,将排序后的访问路径集合中当前访问路径的下一访问路径确定为当前访问路径,返回检查依据当前访问路径是否成功访问到所述应用权限的启动界面的操作。
2.根据权利要求1所述的方法,其特征在于,
所述获取应用权限的访问路径集合,包括:
向服务端发送请求消息,所述请求消息用于请求应用权限的访问路径;
接收所述服务端针对所述请求消息返回的响应消息,所述响应消息携带所述应用权限的至少一个访问路径;
根据所述响应消息携带的至少一个访问路径确定所述访问路径集合。
3.根据权利要求2所述的方法,其特征在于,所述根据所述响应消息携带的至少一个访问路径确定所述访问路径集合,包括:
将所述响应消息携带的至少一个访问路径确定为所述访问路径集合;或者,
将所述响应消息携带的至少一个访问路径、以及预先配置的满足预设条件的所述应用权限的访问路径,确定为所述访问路径集合;
其中,所述预设条件是指:与所述响应消息携带的各访问路径不同。
4.根据权利要求1所述的方法,其特征在于,
所述为所述访问路径集合中的各访问路径确定优先级,包括:
针对所述访问路径集合中的每个访问路径,确定该访问路径是否为服务端返回的响应消息携带的访问路径;如果是,确定该访问路径的优先级为第一优先级,如果否,则确定该访问路径的优先级为第二优先级;
其中,所述第一优先级高于所述第二优先级。
5.根据权利要求1所述的方法,其特征在于,
所述根据所述访问路径集合中的各访问路径的优先级,从所述访问路径集合中选择一个访问路径作为目标访问路径,包括:
从所述访问路径集合中查找到优先级最高的候选访问路径;
若候选访问路径的数量为1,则将所述候选访问路径确定为目标访问路径;
若候选访问路径的数量大于1,则选择一个候选访问路径作为目标访问路径。
6.根据权利要求1所述的方法,其特征在于,
所述当前访问路径包括:访问所述启动界面所经由的目标操作界面的界面标识、以及所述目标操作界面上的目标操作节点的节点标识;所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:
根据当前访问路径访问所述界面标识对应的目标操作界面;
若不存在所述界面标识对应的目标操作界面,或者,存在所述界面标识对应的目标操作界面但所述目标操作界面不存在所述节点标识对应的目标操作节点,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
7.根据权利要求1所述的方法,其特征在于,所述当前访问路径包括:访问所述启动界面所经由的目标操作界面的界面标识,所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:
根据当前访问路径访问所述界面标识对应的目标操作界面;
若在所述目标操作界面的停留时长大于第一时长,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
8.根据权利要求7所述的方法,其特征在于,若所述目标操作界面是可滑动的操作界面,确定所述目标操作界面的停留时长,包括:
检测所述目标操作界面是否有滑动触发;
如果否,则继续累计所述目标操作界面的停留时长;
如果是,则将所述目标操作界面的停留时长设置为指定时长,在指定时长的基础上累计所述目标操作界面的停留时长。
9.根据权利要求1所述的方法,其特征在于,
所述当前访问路径包括:所述应用权限的启动界面的界面标识,所述检查依据当前访问路径是否成功访问到所述应用权限的启动界面,包括:
根据当前访问路径访问所述界面标识对应的启动界面;
若在第二时长内未访问到所述界面标识对应的启动界面,则确定依据当前访问路径无法成功访问到所述应用权限的启动界面。
10.根据权利要求1所述的方法,其特征在于,在按照所述目标访问路径访问的所述应用权限的启动界面中,为所述应用程序启动所述应用权限,包括:
获取所述应用权限的权限状态;
若所述权限状态为所述应用权限未启动的状态,则在所述应用权限的启动界面中为所述应用程序启动所述应用权限。
11.根据权利要求10所述的方法,其特征在于,
所述获取所述应用权限的权限状态,包括:
从所述启动界面获取所述应用权限的权限控制组件的状态;若所述权限控制组件的状态为启动状态,则确定所述应用程序的权限状态为所述应用权限已启动的状态;若所述权限控制组件的状态为未启动状态,则确定所述应用程序的权限状态为所述应用权限未启动的状态;或,
从所述启动界面获取所述应用权限的权限控制组件的描述信息;若所述描述信息表示所述权限控制组件的状态为启动状态,确定所述应用程序的权限状态为所述应用权限已启动的状态;若所述描述信息表示所述权限控制组件的状态为未启动状态,确定所述应用程序的权限状态为所述应用权限未启动的状态。
12.根据权利要求1所述的方法,其特征在于,
所述获取应用权限的访问路径集合,包括:
获取所述应用权限的权限状态;若所述权限状态为所述应用权限未启动的状态,则获取所述应用权限的访问路径集合。
13.根据权利要求12所述的方法,其特征在于,
所述获取所述应用权限的权限状态,包括:
从操作系统查询所述应用权限的权限状态;其中,所述操作系统用于维护应用程序与应用权限的权限状态的对应关系;或,
从权限状态文件查询所述应用权限的权限状态;其中,所述权限状态文件用于记录应用程序与应用权限的权限状态的对应关系。
14.一种电子设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行所述机器可执行指令,以实现权利要求1-13任一项所述的方法步骤。
15.一种机器可读存储介质,其特征在于,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时,实现权利要求1-13任一项所述的方法步骤。
CN201911007141.5A 2019-10-22 2019-10-22 一种应用权限的启动方法、设备及机器可读存储介质 Active CN110780944B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911007141.5A CN110780944B (zh) 2019-10-22 2019-10-22 一种应用权限的启动方法、设备及机器可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911007141.5A CN110780944B (zh) 2019-10-22 2019-10-22 一种应用权限的启动方法、设备及机器可读存储介质

Publications (2)

Publication Number Publication Date
CN110780944A CN110780944A (zh) 2020-02-11
CN110780944B true CN110780944B (zh) 2023-08-29

Family

ID=69384457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911007141.5A Active CN110780944B (zh) 2019-10-22 2019-10-22 一种应用权限的启动方法、设备及机器可读存储介质

Country Status (1)

Country Link
CN (1) CN110780944B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367945A (zh) * 2020-02-28 2020-07-03 平安医疗健康管理股份有限公司 报表查询方法、装置、设备及计算机可读存储介质
CN113626835B (zh) * 2021-06-25 2022-06-17 荣耀终端有限公司 一种数据访问方法及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943531A (zh) * 2017-11-03 2018-04-20 珠海市君天电子科技有限公司 一种权限控制方法、用户终端、电子设备以及存储介质
CN108427886A (zh) * 2018-01-25 2018-08-21 上海掌门科技有限公司 一种应用程序访问权限设置方法、系统、设备及可读介质
CN108875354A (zh) * 2018-05-31 2018-11-23 上海连尚网络科技有限公司 权限开启方法、终端设备及计算机可读介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943531A (zh) * 2017-11-03 2018-04-20 珠海市君天电子科技有限公司 一种权限控制方法、用户终端、电子设备以及存储介质
CN108427886A (zh) * 2018-01-25 2018-08-21 上海掌门科技有限公司 一种应用程序访问权限设置方法、系统、设备及可读介质
CN108875354A (zh) * 2018-05-31 2018-11-23 上海连尚网络科技有限公司 权限开启方法、终端设备及计算机可读介质

Also Published As

Publication number Publication date
CN110780944A (zh) 2020-02-11

Similar Documents

Publication Publication Date Title
US10225145B2 (en) Method and device for updating client
JP6752969B2 (ja) アカウントログインのための方法、装置及びサーバ
CN106031127B (zh) 用于应用的管理的方法和装置
CN106130972B (zh) 资源访问控制方法和装置
CN110780944B (zh) 一种应用权限的启动方法、设备及机器可读存储介质
US20130283274A1 (en) Method and system for discovering and activating an application in a computer device
CN112506553B (zh) 服务网格的数据面容器的升级方法、装置及电子设备
US11455117B2 (en) Data reading method, apparatus, and system, avoiding version rollback issues in distributed system
US9571537B2 (en) Content acquisition device and method
CN109254981B (zh) 一种分布式缓存系统的数据管理方法和装置
CN111193804B (zh) 分布式存储方法及装置、网络节点及存储介质
US20170286440A1 (en) Method, business processing server and data processing server for storing and searching transaction history data
CN110955460A (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN112579877A (zh) 信源系统的控制方法、装置、存储介质和设备
CN112685064B (zh) 设备标识的处理方法以及装置、存储介质、电子装置
CN109582680B (zh) 基于新产品开发的业务处理方法、电子装置及可读存储介质
KR101317901B1 (ko) 애플리케이션 실행 단말 및 그 방법
CN111371818B (zh) 一种数据请求的验证方法、装置及设备
CN109522014B (zh) 基于新产品开发的算法处理方法、电子装置及可读存储介质
CN112947991A (zh) 版本差异代码文件的获取方法、装置、计算机设备和介质
CN108173689B (zh) 负载均衡数据的输出系统
CN107094297B (zh) 设备识别方法及装置
JP2003271387A (ja) ダウンロード方法、ダウンロードシステム
CN111131296B (zh) 消息分发方法和装置
CN112035174B (zh) 运行web服务的方法、装置及计算机存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant