服务请求的处理方法、设备、系统及存储介质与流程

文档序号:32406646发布日期:2022-12-02 20:37阅读:27来源:国知局
服务请求的处理方法、设备、系统及存储介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种服务请求的处理方法、设备、系统及存储介质。


背景技术:

2.终端设备中的应用(application,简称app)运行于相互隔离的沙盒中,仅具备极少的权限。有关法规及行业标准明确要求,当应用需要访问用户隐私信息时,必须申请相应的权限并通过弹对话框等形式告知用户,由用户选择是否授权,只有当用户选择授权后方可执行相应操作来获取用户隐私信息,否则拒绝应用获取用户隐私信息。
3.相关技术中,操作系统包括权限服务模块、服务模块和对话框界面服务模块。在应用调用目标业务功能接口之前,应用先向权限服务模块发送应用权限的授权请求。权限服务模块收到该授权请求后,先查询该应用的授权状态,如果授权状态为询问,则请求对话框界面服务模块弹出授权对话框,并等待用户的输入。当用户输入后,对话框界面服务模块向权限服务模块返回用户的输入,由权限服务模块根据用户的输入更新本地存储的该应用的授权状态,并将更新后的授权状态返回给应用。如果更新后的授权状态为允许,则应用调用目标业务功能接口,并向服务模块发送进程间通信(inter process communication,简称ipc)消息请求目标业务功能接口提供的服务;如果更新后的授权状态为拒绝,则中断服务请求。
4.上述服务请求过程中,服务请求的处理需要较大的开发工作量,导致应用的开发效率较低。


技术实现要素:

5.本技术提供一种服务请求的处理方法、设备、系统及存储介质,用以提高应用的开发效率。
6.第一方面,本技术提供一种服务请求的处理方法,应用于操作系统,操作系统包括授权代理模块、服务模块、权限服务模块和对话框界面服务模块,处理方法包括:
7.在应用调用目标业务功能接口时,授权代理模块接收来自应用的第一消息,第一消息用于请求目标业务功能接口提供的服务;
8.授权代理模块向服务模块发送第一消息;
9.服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态,授权请求用于查询应用是否具有获得服务所需的目标信息的权限;
10.若服务请求的授权状态为询问,则服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态;
11.授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。
12.可选的,服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授
权代理模块获得根据授权输入得到的更新后的授权状态,包括:
13.服务模块指示授权代理模块向权限服务模块请求弹对话框授权;
14.权限服务模块请求对话框界面服务模块弹出授权对话框,以向权限服务模块发送得到的授权输入;
15.权限服务模块根据授权输入,向授权代理模块发送得到的更新后的授权状态。
16.可选的,服务模块指示授权代理模块向权限服务模块请求弹对话框授权,包括:
17.服务模块根据第一消息构造回复消息,回复消息中携带有设定标签,设定标签用于指示授权代理模块识别回复消息;
18.服务模块向授权代理模块发送回复消息;
19.授权代理模块向权限服务模块请求弹对话框授权。
20.可选的,回复消息中还携带有生成第一消息的元数据,处理方法还包括:
21.授权代理模块在接收到回复消息之后,提取并缓存回复消息中的元数据。
22.可选的,权限服务模块根据授权输入,向授权代理模块发送得到的更新后的授权状态,包括:
23.权限服务模块根据授权输入更新本地存储的应用的授权状态,得到更新后的授权状态;
24.权限服务模块向授权代理模块发送更新后的授权状态。
25.可选的,授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务,包括:
26.若更新后的授权状态为允许,则授权代理模块向服务模块请求服务,并执行以下操作:
27.根据生成第一消息的元数据,重构第二消息,第二消息用于请求目标业务功能接口提供的服务;
28.授权代理模块向服务模块发送第二消息,以得到服务模块响应第二消息得到的处理结果。
29.可选的,授权代理模块向服务模块发送第二消息,以得到服务模块响应第二消息得到的处理结果,包括:
30.授权代理模块向服务模块发送第二消息;
31.响应于第二消息中携带更新后的授权状态,则服务模块响应第二消息得到的处理结果;或者,响应于第二消息中未携带更新后的授权状态,则服务模块向权限服务模块查询得到更新后的授权状态,若更新后的授权状态为允许,则响应第二消息得到的处理结果;
32.服务模块向应用发送处理结果。
33.可选的,授权代理模块接收来自应用的第一消息之后,还包括:
34.授权代理模块缓存第一消息;
35.授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务,包括:
36.若更新后的授权状态为允许,则授权代理模块向服务模块请求服务,并执行以下操作:
37.授权代理模块向服务模块发送第一消息,以得到服务模块响应第一消息得到的处理结果。
38.可选的,授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务,包括:
39.若更新后的授权状态为拒绝,则授权代理模块拒绝向服务模块请求服务,并向应用发送用于拒绝服务的指示信息。
40.可选的,处理方法还包括:若服务请求的授权状态为允许,则服务模块响应第一消息得到处理结果,并向应用发送处理结果;
41.若服务请求的授权状态为拒绝,则服务模块向应用发送用于拒绝服务的指示信息。
42.第二方面,本技术提供一种服务请求的处理方法,应用于应用,处理方法包括:
43.在应用调用目标业务功能接口时,向操作系统发送第一消息,第一消息用于请求目标业务功能接口提供的服务;
44.接收操作系统发送的响应结果,响应结果包括用于拒绝服务的指示信息,以及,响应第一消息得到处理结果。
45.第三方面,本技术提供一种服务请求的处理装置,应用于操作系统,处理装置包括:
46.调用模块,用于在应用调用目标业务功能接口时,授权代理模块接收来自应用的第一消息,第一消息用于请求目标业务功能接口提供的服务;
47.发送模块,用于授权代理模块向服务模块发送第一消息;
48.响应模块,用于服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态,授权请求用于查询应用是否具有获得服务所需的目标信息的权限;
49.请求模块,用于若服务请求的授权状态为询问,则服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态;
50.确定模块,用于授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。
51.第四方面,本技术提供一种服务请求的处理装置,应用于应用,处理装置包括:
52.发送模块,用于在应用调用目标业务功能接口时,向操作系统发送第一消息,第一消息用于请求目标业务功能接口提供的服务;
53.接收模块,用于接收操作系统发送的响应结果,响应结果包括用于拒绝服务的指示信息,以及,响应第一消息得到处理结果。
54.第五方面,本技术提供一种电子设备,包括:存储器,处理器;
55.存储器,用于存储可执行指令;
56.处理器,被配置为执行可执行指令,以实现第一方面或第二方面的处理方法。
57.第六方面,本技术提供一种服务请求的处理系统,包括:
58.操作系统,用于执行第一方面的处理方法;
59.应用,用于执行第二方面的处理方法。
60.第七方面,本技术提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现第一方面或第二方面的处理
方法。
61.第八方面。本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被执行时实现第一方面或第二方面的处理方法。
62.本技术提供的服务请求的处理方法、设备、系统及存储介质,在应用调用目标业务功能接口时,授权代理模块接收并向服务模块发送来自应用的第一消息;服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态;若服务请求的授权状态为询问,则服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态;授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。该过程通过引入授权代理模块,实现了对应用透明的请求授权处理机制,即在权限检查过程中涉及到的请求授权的过程会由操作系统进行处理,而发送服务请求的应用方对此无感知。这样在开发应用时不需要在代码层面显式调用系统接口去触发对话框的弹出。因此能够减少应用开发的工作量,提高应用开发的效率。
附图说明
63.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
64.图1为相关技术中请求权限的流程示意图;
65.图2为本技术一实施例提供的服务请求的处理方法的流程图;
66.图3为本技术一实施例提供的更新授权状态的流程图;
67.图4为本技术一实施例提供的更新后的授权状态为允许时的服务模块响应流程图;
68.图5为本技术另一实施例提供的服务请求的处理方法的流程图;
69.图6为本技术一实施例提供的服务请求的处理方法的交互信令图;
70.图7为本技术一实施例提供的服务请求的处理装置示意图;
71.图8为本技术另一实施例提供的服务请求的处理装置示意图;
72.图9为本技术另一实施例提供的电子设备的结构示意图;
73.图10为本技术实施例提供的一种终端的框图。
74.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
75.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
76.终端设备上的应用要访问外部的数据和服务时,必须申请相应的权限并通过ipc等方式调用操作系统提供的访问接口。在每个应用中都存在manifest文件,它决定了应用
必须有权限才能访问受保护的api(application programming interface,应用程序编程接口)部分。在manifest文件中,权限会被划分为普通权限、危险权限等几个不同保护级别。其中普通权限对用户隐私或其它应用基本无影响,如果在manifest文件中声明了普通权限,系统会自动向应用授予该权限。而危险权限会对用户隐私信息、用户存储的数据或其它应用有影响,例如读取用户的联系人属于危险权限。如果在manifest应用中声明了危险权限,系统不会自动向应用授予该权限,必须由用户决定是否授权。
77.图1为相关技术中请求权限的流程示意图。参照图1,在应用调用目标业务功能接口之前,应用首先需要通过调用接口,向权限服务模块发送应用权限的授权请求,接口可以是request permission接口。权限服务模块收到上述请求后首先会查询该应用的授权状态,如果授权状态为允许或者拒绝,权限服务模块会将授权状态直接返回给应用;如果授权状态为询问,则权限服务模块会请求对话框界面服务模块弹出授权对话框,并等待用户输入,之后对话框界面服务模块会将用户的输入返回给权限服务模块,权限服务模块收到用户的输入后,首先更新本地存储的授权状态,并将更新后的授权状态返回给应用。应用收到更新后的授权状态后,如果更新后的授权状态为允许或是最初的授权状态为允许,则应用调用目标业务功能接口,并向服务模块发送ipc消息请求目标业务功能接口提供的服务,此时服务模块会向权限服务模块发送检查应用权限的请求,权限服务模块则会返回允许,服务模块接收到允许后会响应应用请求并返回响应结果至应用。如果更新后的授权状态为拒绝或是最初的授权状态为拒绝,则中断服务请求。
78.为了实现上述请求权限的流程,应用开发人员必须在应用代码层面显式调用request permission接口,主动去触发授权对话框的弹出,请求并等待用户的输入。同时,应用开发人员必须在应用代码中根据用户的输入的不同,分别实现不同的业务处理逻辑。因此,在应用开发阶段,应用开发人员需明确知晓应用所需权限的保护级别,并需对不同保护级别的权限进行不同的处理。对于危险权限,除了在manifest文件中声明该权限的保护级别外,开发人员还需要额外地修改代码,以便应用能够执行请求用户授权的操作。这样进行应用开发时,应用开发人员的工作量与工作难度较大,应用开发的效率较低。
79.基于上述问题,本技术提供一种服务请求的处理方法,授权代理模块能够在授权状态为询问时,代替应用获得用户的输入(即下述“授权输入”),并根据用户的输入确定是否向服务模块请求服务。相应的,应用只需要发送请求信息(即下述“第一信息”)并接收响应结果即可。因此降低了应用开发成本与应用开发难度,进而提升了应用开发效率。
80.下面以具体的实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
81.图2为本技术一实施例提供的服务请求的处理方法的流程图。该处理方法应用于操作系统,操作系统包括授权代理模块、服务模块、权限服务模块和对话框界面服务模块。
82.如图2所示,服务请求的处理方法包括:
83.s201,在应用调用目标业务功能接口时,授权代理模块接收来自应用的第一消息。
84.第一消息用于请求目标业务功能接口提供的服务,目标业务功能包括但不限于使用摄像头、查看联系人或是查看照片,应用通过调用目标业务功能接口并向授权代理模块发送第一消息来请求服务。
85.第一消息可以是通过ipc等方式,发送的msg请求服务。
86.s202,授权代理模块向服务模块发送第一消息。
87.第一消息经过授权代理模块转发至服务模块。
88.s203,服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态。
89.授权请求用于查询应用是否具有获得服务所需的目标信息的权限。当服务模块接收到第一消息后,会向权限服务模块发送应用权限的授权请求来查询应用的权限,即应用是否具有获得第一消息请求的服务所需的目标信息的权限。示例地,如果第一消息请求的服务为“读取联系人”,则授权请求用于查询应用是否具有获得“联系人”的权限。
90.可选的,授权状态可以是三种:允许、拒绝与询问。其中,授权状态为允许代表应用具有获得服务所需的目标信息的权限,授权状态为拒绝代表应用不具有获得服务所需的目标信息的权限,授权状态为询问代表在经过询问用户后,才能确定应用是否具有获取的服务所需的目标信息的权限。因此,在一些实施例中,若服务请求的授权状态为允许,则服务模块响应第一消息得到处理结果,并向应用发送处理结果。若服务请求的授权状态为拒绝,则服务模块向应用发送用于拒绝服务的指示信息。若服务请求的授权状态为询问,则执行步骤s204。
91.一般的,发送的处理结果可以是应用请求的目标信息。
92.s204,服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态。
93.当服务请求的授权状态为询问时,需要通过询问用户并得到用户的授权输入来更新授权状态。因此服务模块会指示授权代理模块向权限服务模块请求弹对话框授权,在对话框中用户可以选择或是输入更新后的授权状态。
94.s205,授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。
95.更新后的授权状态为允许或拒绝。如果更新后的授权状态为允许,则向服务模块请求服务。如果更新后的授权状态为拒绝,则不向服务模块请求服务;或者,在向服务模块请求服务后,请求模块拒绝服务。
96.本技术实施例中,在应用调用目标业务功能接口时,授权代理模块接收并向服务模块发送来自应用的第一消息;服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态;若服务请求的授权状态为询问,则服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态;授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。该过程通过引入授权代理模块,实现了对应用透明的请求授权处理机制,即在权限检查过程中涉及到的请求授权的过程会由操作系统进行处理,而发送服务请求的应用方对此无感知。这样在开发应用时不需要在代码层面显式调用系统接口去触发对话框的弹出。因此能够减少应用开发的工作量,提高应用开发的效率。
97.图3为本技术一实施例提供的更新授权状态的流程图。参照图3,对步骤s204进行进一步说明。在一些实施例中,步骤s204包括:
98.s301,服务模块指示授权代理模块向权限服务模块请求弹对话框授权。
99.可选的,步骤s301可以通过以下流程实现:服务模块根据第一消息构造回复消息,
回复消息中携带有设定标签,设定标签用于指示授权代理模块识别回复消息;服务模块向授权代理模块发送回复消息;授权代理模块向权限服务模块请求弹对话框授权。
100.上述的设定标签可以通过设置回复消息中消息头的特定字段来实现。
101.此外,构造回复消息的过程虽然是由服务模块执行的,但是整个过程并不会进行显示,所以用户在使用时不会感知到。
102.当授权状态为询问时,服务模块会根据之前接收到的第一消息构造出回复消息,并在回复消息中设置设定标签,当服务模块向授权代理模块发送消息时,设定标签能够让授权代理模块识别回复消息,在回复消息的触发下,授权代理模块会向权限服务模块请求弹对话框授权。
103.在一些实施例中,回复消息可以只发送,而不是固定向授权代理模块发送,此时,由于设定标签的存在,授权代理模块可以拦截携带有设定标签的回复消息。
104.s302,权限服务模块请求对话框界面服务模块弹出授权对话框,以向权限服务模块发送得到的授权输入。
105.当对话框界面服务模块弹出授权对话框后,用户可以通过在授权对话框里进行填写或选择,从而使对话框界面服务模块获得授权输入,授权输入之后会发送到权限服务模块。
106.s303,权限服务模块根据授权输入,向授权代理模块发送得到的更新后的授权状态。
107.更新后的授权状态为允许或是拒绝。
108.由于更新授权状态的过程不需要应用的参与,因此在开发应用时,可以减少与之相关的代码的开发,从而减少了应用开发的工作量。
109.图4为本技术一实施例提供的更新后的授权状态为允许时的服务模块响应流程图。参照图4,对步骤s205进行进一步说明,具体的,步骤s205包括:
110.s401,根据生成第一消息的元数据,重构第二消息。
111.若更新后的授权状态为允许,则需要重新请求目标业务功能接口提供的服务,第二消息用于请求目标业务功能接口提供的服务。
112.在一些实施例中,授权代理模块在接收到回复消息之后,会提取并缓存回复消息中的元数据。因此,当更新后的授权状态是允许时,会根据元数据重构第二消息,第二消息的作用与上述的第一消息相同。由于可以重构第二消息,因此不需要存储第一消息,减少了对存储空间的使用。
113.s402,授权代理模块向服务模块发送第二消息,以得到服务模块响应第二消息得到的处理结果。
114.服务模块响应第二消息的方式有多种,在一种情况下,授权代理模块向服务模块发送第二消息;响应于第二消息中携带更新后的授权状态,则服务模块响应第二消息得到的处理结果。该种方式中,由于第二消息中就包含有授权状态,因此服务模块可以直接基于授权状态进行响应,不需要再与权限服务模块进行交互。
115.在另一种情况下,响应于第二消息中未携带更新后的授权状态,则服务模块向权限服务模块查询得到更新后的授权状态,若更新后的授权状态为允许,则响应第二消息得到的处理结果。该种方式中,要求权限服务模块根据授权输入更新本地存储的应用的授权
状态,得到更新后的授权状态,这样,服务模块才能够在权限服务模块中查询到更新后的授权状态。
116.相似的,第一消息中也可以携带授权状态,此时,当服务模块接收到第一消息后,服务模块不需要向权限服务模块发送应用权限的授权请求,而是可以直接基于第一消息中携带的授权状态进行响应。
117.s403,服务模块向应用发送处理结果。
118.如果更新后的授权状态是允许,则最终需要服务模块向应用发送处理结果。
119.在一些实施例中,若更新后的授权状态是拒绝,授权代理模块拒绝向服务模块请求服务,并向应用发送用于拒绝服务的指示信息。指示信息可以是“no permission”。
120.可选的,若更新后的授权状态是拒绝,当接收到更新后的授权状态后,授权代理模块也可以发送第二信息至服务模块,当服务模块响应后,根据响应结果向应用发送用于拒绝服务的指示信息。此处的第二信息的来源与步骤s401中的第二信息的来源相同。此外,第二信息可以携带也可以不携带更新后的授权状态,如果第二信息携带更新后的授权状态,则服务模块直接向应用发送用于拒绝服务的指示信息;如果第二消息中未携带更新后的授权状态,则服务模块向权限服务模块查询更新后的授权状态,再基于此向应用发送用于拒绝服务的指示信息。
121.可选的,授权代理模块接收来自应用的第一消息之后,还可以缓存第一消息。在该情况下,步骤s205包括:若更新后的授权状态为允许,则授权代理模块向服务模块请求服务,并执行以下操作:授权代理模块向服务模块发送第一消息,以得到服务模块响应第一消息得到的处理结果。
122.在这种情况下,当授权代理模块接收到更新后的授权状态时,可以不再重构第二消息,而是直接发送第一消息至服务模块。服务模块根据第一消息再次向权限服务模块发送应用权限的授权请求,以得到更新后的授权状态。
123.图5为本技术另一实施例提供的服务请求的处理方法的流程图。该处理方法应用于应用,参照图5,处理方法包括:
124.s501,在应用调用目标业务功能接口时,向操作系统发送第一消息。
125.第一消息用于请求目标业务功能接口提供的服务。
126.s502,接收操作系统发送的响应结果,响应结果包括用于拒绝服务的指示信息,以及,响应第一消息得到处理结果。
127.本实施例提供的方法,由于应用只需要进行第一消息的发送与最终响应结果的接收,因此应用开发人员无需额外开发代码去请求用户授权,降低了应用开发的工作量与开发难度,提升了应用开发效率与开发体验。
128.图6为本技术一实施例提供的服务请求的处理方法的交互信令图。如图6所示,本实施包括以下步骤:
129.s601,应用向授权代理模块发送第一消息。
130.s602,授权代理模块向服务模块发送第一消息。
131.s603,服务模块向权限服务模块发送应用权限的授权请求。
132.s604,权限服务模块向服务模块发送授权状态。
133.若授权状态为允许,则执行步骤s605;若授权状态为拒绝,则执行步骤s606;若授
权状态为询问,则执行步骤s607-s622。
134.s605,服务模块响应第一消息得到处理结果,并向应用发送处理结果。
135.s606,服务模块向应用发送用于拒绝服务的指示信息。
136.s607,服务模块根据第一消息构造回复消息。
137.s608,服务模块在回复消息上设置设定标签。
138.s609,服务模块发送回复消息至授权代理模块。
139.s610,授权代理模块提取并缓存回复消息中的元数据。
140.s611,授权代理模块向权限服务模块请求弹对话框授权。
141.s612,权限服务模块请求对话框界面服务模块弹出授权对话框。
142.s613,对话框界面服务模块接收授权输入。
143.s614,对话框界面服务模块发送授权输入至权限服务模块。
144.s615,权限服务模块更新授权状态,得到更新后的授权状态。
145.s616,权限服务模块向授权代理模块发送更新后的授权状态。
146.s617,根据生成第一消息的元数据,重构第二消息。
147.s618,授权代理模块向服务模块发送第二消息。
148.s619,服务模块向权限服务模块发送应用权限的授权请求。
149.s620,权限服务模块向服务模块发送更新后的授权状态。
150.若更新后的授权状态为允许,则执行步骤s621;若更新后的授权状态为拒绝,则执行步骤s622。
151.s621,服务模块响应第一消息得到处理结果,并向应用发送处理结果。
152.s622,服务模块向应用发送用于拒绝服务的指示信息。
153.综上,本技术至少具有以下优势:
154.一、授权代理模块代替应用去请求授权输入,因此能够减少应用开发中关于请求授权输入的代码的开发;
155.二、请求授权输入的整个过程对应用透明,应用无感知。
156.下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
157.图7为本技术一实施例提供的服务请求的处理装置示意图。本技术实施例提供一种处理装置,应用于操作系统,如图7所示,该处理装置70包括:调用模块701、发送模块702、响应模块703、请求模块704和确定模块705。
158.其中:
159.调用模块701,用于在应用调用目标业务功能接口时,授权代理模块接收来自应用的第一消息,第一消息用于请求目标业务功能接口提供的服务;
160.发送模块702,用于授权代理模块向服务模块发送第一消息;
161.响应模块703,用于服务模块响应于接收到第一消息,向权限服务模块发送应用权限的授权请求,以得到应用面向目标信息的授权状态,授权请求用于查询应用是否具有获得服务所需的目标信息的权限;
162.请求模块704,用于若服务请求的授权状态为询问,则服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的
授权状态;
163.确定模块705,用于授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务。
164.可选的,请求模块704在使服务模块指示授权代理模块向权限服务模块请求弹对话框授权,以使授权代理模块获得根据授权输入得到的更新后的授权状态时,具体用于:
165.服务模块指示授权代理模块向权限服务模块请求弹对话框授权;
166.权限服务模块请求对话框界面服务模块弹出授权对话框,以向权限服务模块发送得到的授权输入;
167.权限服务模块根据授权输入,向授权代理模块发送得到的更新后的授权状态。
168.可选的,请求模块704在用于服务模块指示授权代理模块向权限服务模块请求弹对话框授权时,具体用于:
169.服务模块根据第一消息构造回复消息,回复消息中携带有设定标签,设定标签用于指示授权代理模块识别回复消息;
170.服务模块向授权代理模块发送回复消息;
171.授权代理模块向权限服务模块请求弹对话框授权。
172.在一些实施例中,回复消息中还携带有生成第一消息的元数据,请求模块704还用于:在授权代理模块在接收到回复消息之后,提取并缓存回复消息中的元数据。
173.可选的,请求模块704在用于让授权代理模块根据更新后的授权状态,确定是否向服务模块请求服务时,具体用于:权限服务模块根据授权输入更新本地存储的应用的授权状态,得到更新后的授权状态;权限服务模块向授权代理模块发送更新后的授权状态。
174.可选的,确定模块705具体用于:若更新后的授权状态为允许,则授权代理模块向服务模块请求服务,并执行以下操作:
175.根据生成第一消息的元数据,重构第二消息,第二消息用于请求目标业务功能接口提供的服务;
176.授权代理模块向服务模块发送第二消息,以得到服务模块响应第二消息得到的处理结果。
177.可选的,确定模块705在用于让授权代理模块向服务模块发送第二消息,以得到服务模块响应第二消息得到的处理结果中,具体用于:授权代理模块向服务模块发送第二消息;
178.响应于第二消息中携带更新后的授权状态,则服务模块响应第二消息得到的处理结果;或者,响应于第二消息中未携带更新后的授权状态,则服务模块向权限服务模块查询得到更新后的授权状态,若更新后的授权状态为允许,则响应第二消息得到的处理结果;
179.服务模块向应用发送处理结果。
180.可选的,响应模块703,还用于:授权代理模块缓存第一消息。此时,确定模块705用于:若更新后的授权状态为允许,则授权代理模块向服务模块请求服务,并执行以下操作:
181.授权代理模块向服务模块发送第一消息,以得到服务模块响应第一消息得到的处理结果。
182.可选的,确定模块705还用于:若更新后的授权状态为拒绝,则授权代理模块拒绝向服务模块请求服务,并向应用发送用于拒绝服务的指示信息。
183.可选的,响应模块703还用于:若服务请求的授权状态为允许,则服务模块响应第一消息得到处理结果,并向应用发送处理结果;
184.若服务请求的授权状态为拒绝,则服务模块向应用发送用于拒绝服务的指示信息。
185.图8为本技术另一实施例提供的服务请求的处理装置示意图。本技术实施例提供一种处理装置,应用于应用,如图8所示,该处理装置80包括:发送模块801与接收模块802。其中:
186.发送模块801,用于在应用调用目标业务功能接口时,向操作系统发送第一消息,第一消息用于请求目标业务功能接口提供的服务;
187.接收模块802,用于接收操作系统发送的响应结果,响应结果包括用于拒绝服务的指示信息,以及,响应第一消息得到处理结果。
188.需要说明的是,本技术实施例提供的处理装置,可用于执行上述对应的处理方法实施例,其实现原理与技术效果类似,对此不再赘述。
189.需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,处理模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
190.例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,简称:asic),或,一个或多个微处理器(digital signal processor,简称:dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,简称:fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,简称:cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称:soc)的形式实现。
191.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集
成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,简称:ssd))等。
192.图9为本技术另一实施例提供的电子设备的结构示意图。参照图9,节电子设备90包括存储器901和处理器902。其中,存储器901用于存储可执行指令;处理器902被配置为执行可执行指令,以实现上述的处理方法。
193.图10为本技术实施例提供的一种终端的框图。本技术实施例提供一种终端,用于执行上述处理方法。该终端可以是移动电话,平板设备,个人数字助理等。
194.终端100可以包括以下一个或多个组件:处理组件1001,存储器1002,电源组件1003,多媒体组件1004,音频组件1005,输入/输出接口1006,传感器组件1007,以及通信组件1008。输入/输出接口也可以称为“i/o接口”。
195.处理组件1001通常控制终端100的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1001可以包括一个或多个处理器1009来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1001可以包括一个或多个模块,便于处理组件1001和其他组件之间的交互。例如,处理组件1001可以包括多媒体模块,以方便多媒体组件1004和处理组件1001之间的交互。
196.存储器1002被配置为存储各种类型的数据以支持在终端100的操作。这些数据的示例包括用于在终端100上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1002可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory,简称:sram),电可擦除可编程只读存储器(electrically erasable programmable read only memory,简称:eeprom),可擦除可编程只读存储器(electrical programmable read only memory,简称:eprom),可编程只读存储器(programmable read only memory,简称:prom),只读存储器(read only memory,简称:rom),磁存储器,快闪存储器,磁盘或光盘。
197.电源组件1003为终端100的各种组件提供电力。电源组件1003可以包括电源管理系统,一个或多个电源,及其他与为终端100生成、管理和分配电力相关联的组件。
198.多媒体组件1004包括在终端100和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(liquid crystal display,简称:lcd)和触摸面板(touch panel,简称:tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1004包括一个前置摄像头和/或后置摄像头。当终端100处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
199.音频组件1005被配置为输出和/或输入音频信号。例如,音频组件1005包括一个麦克风(mic),当终端100处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1002或经由通信组件1008发送。在一些实施例中,音频组件1005还包括一个扬声器,用于输出音频信号。
200.i/o接口1006为处理组件1001和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
201.传感器组件1007包括一个或多个传感器,用于为终端100提供各个方面的状态评估。例如,传感器组件1007可以检测到终端100的打开/关闭状态,组件的相对定位,例如组件为终端100的显示器和小键盘,传感器组件1007还可以检测终端100或终端一个组件的位置改变,用户与终端100接触的存在或不存在,终端100方位或加速/减速和终端100的温度变化。传感器组件1007可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1007还可以包括光传感器,如cmos(complementary metal oxide semiconductor,互补金属氧化物半导体)或ccd(charge coupled device,电荷耦合器件)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1007还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
202.通信组件1008被配置为便于终端100和其他设备之间有线或无线方式的通信。终端100可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件1008经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件1008还包括近场通信(near field communication,简称:nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(radio frequency identification,简称:rfid)技术,红外数据协会(infrared data association,简称:irda)技术,超宽带(ultra wide band,简称:uwb)技术,蓝牙(bluetooth,简称:bt)技术和其他技术来实现。
203.本技术实施例还提供了一种服务请求的处理系统,该服务请求的处理系统包括操作系统与应用。其中,操作系统用于执行上述方法中操作系统的执行步骤,应用用于执行上述方法中应用的执行步骤。
204.本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述的处理方法。
205.上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。计算机可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
206.一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(application specific integrated circuits,简称:asic)中。当然,处理器和可读存储介质也可以作为分立组件存在于感知空洞的检测装置中。
207.本技术实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的处理方法。
208.本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程
序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
209.最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1