CN111638966A - 资源获取方法、装置及电子设备 - Google Patents
资源获取方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111638966A CN111638966A CN202010470948.9A CN202010470948A CN111638966A CN 111638966 A CN111638966 A CN 111638966A CN 202010470948 A CN202010470948 A CN 202010470948A CN 111638966 A CN111638966 A CN 111638966A
- Authority
- CN
- China
- Prior art keywords
- target
- resource
- application
- application programs
- application program
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种资源获取方法、装置及电子设备,属于通信技术领域,能够解决由于资源冲突导致应用程序无法正常运行的问题。具体方案包括:正在运行的N个应用程序分别生成资源请求,该资源请求用于请求调用目标资源;通过目标进程分别向N个应用程序传输目标资源;N个应用程序同时调用目标资源;其中,N为大于1的整数。该方案应用于多个应用程序请求调用同一资源的场景中。
Description
技术领域
本申请属于通信技术领域,具体涉及一种资源获取方法、装置及电子设备。
背景技术
随着通信技术的发展,电子设备的智能化程度不断提高。在电子设备正在运行一个应用程序的情况下,用户可以触发电子设备运行其他应用程序。
通常,为了防止资源冲突,电子设备会禁止两个应用程序同时对同一个资源进行编辑或访问。例如,在应用程序A使用摄像头的情况下,应用程序B无法使用摄像头。又例如,在应用程序A对某个文件进行编辑的情况下,应用程序B无法对该文件进行编辑。因此,当用户触发电子设备运行两个应用程序时,若两个应用程序需要对同一资源进行访问,那么两个应用程序中的一个应用程序会因为资源冲突而无法正常运行。
发明内容
本申请实施例的目的是提供一种资源获取方法、装置及电子设备,能够解决由于资源冲突导致应用程序无法正常运行的问题。
为了解决上述技术问题,本申请是这样实现的:
第一方面,本申请实施例提供了一种资源获取方法,该方法包括:正在运行的N个应用程序分别生成资源请求,该资源请求用于请求调用目标资源;通过目标进程分别向N个应用程序传输目标资源;N个应用程序同时调用目标资源;其中,N为大于1的整数。
第二方面,本申请实施例提供了一种资源获取装置,该资源获取装置包括:处理模块和通信模块。处理模块,用于通过正在运行的N个应用程序分别生成资源请求,该资源请求用于请求调用目标资源;通信模块,用于通过目标进程分别向N个应用程序传输目标资源;处理模块,还用于通过N个应用程序同时调用通信模块传输的目标资源;其中,N为大于1的整数。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在该存储器上并可在该处理器上运行的程序或指令,该程序或指令被该处理器执行时实现如第一方面提供的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,该可读存储介质上存储程序或指令,该程序或指令被处理器执行时实现如第一方面提供的方法的步骤。
第五方面,本申请实施例提供了一种芯片,该芯片包括处理器和通信接口,该通信接口和该处理器耦合,该处理器用于运行程序或指令,实现如第一方面提供的方法。
在本申请实施例中,正在运行的N个应用程序分别生成资源请求,该资源请求用于请求调用目标资源;并通过目标进程分别向N个应用程序传输目标资源;N个应用程序同时调用目标资源;其中,N为大于1的整数。通过该方案,在多个应用程序请求同一个资源的情况下,由于可以通过目标进程获取该多个应用程序请求的目标资源,并通过目标进程分别向多个应用程序中的每个应用程序传输该目标资源,即目标进程为访问目标资源的唯一进程,因此,即使多个应用程序请求同一个资源,也可以使多个应用程序同时调用目标资源,从而避免了资源冲突的问题,并且保证了多个应用程序正常运行。
附图说明
图1为本发明实施例提供的资源获取方法的示意图之一;
图2为本发明实施例提供的资源获取方法的示意图之二;
图3为本发明实施例提供的资源获取方法的示意图之三;
图4为本发明实施例提供的显示目标标识的界面示意图;
图5为本发明实施例提供的资源获取方法的示意图之四;
图6为本发明实施例提供的结束目标进程前后的对比示意图;
图7为本发明实施例提供的资源获取装置的结构示意图之一;
图8为本发明实施例提供的资源获取装置的结构示意图之二;
图9是本申请实施例提供的电子设备的硬件示意图之一;
图10是本申请实施例提供的电子设备的硬件示意图之二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一输入可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或者两个以上,例如,多个应用程序是指两个或者两个以上的应用程序等。
通常,为了防止资源冲突,电子设备会禁止两个应用程序及两个以上的应用程序同时对同一个资源进行编辑或访问。但是,当用户触发电子设备运行多个应用程序时,若该多个应用程序需要对同一资源进行访问,那么该多个应用程序中的一个应用程序会因为资源冲突而无法正常运行。为了避免应用程序因为资源冲突无法正常运行的问题,本发明实施例提供一种资源获取方法,具体可以应用于下述几种场景:
场景一、当用户触发电子设备运行应用程序A和应用程序B时,如果应用程序A和应用程序B都需要使用电子设备的摄像头采集数据,例如,应用程序A需要通过摄像头与其他电子设备进行视频通话,应用程序B需要通过摄像头拍照或扫描二维码,那么,电子设备可以通过目标进程获取摄像头采集的数据,再通过目标进程分别将摄像头采集的数据传输至应用程序A和应用程序B,从而应用程序A可以通过摄像头与其他电子设备进行视频通话,应用程序B可以通过摄像头拍照或扫描二维码。
场景二、当用户触发电子设备运行应用程序A和应用程序B时,如果应用程序A和应用程序B都需要对同一个文件进行操作,例如,应用程序A需要对一个文件的内容进行增删操作,应用程序B需要将该文件分享给其他电子设备,那么,电子设备可以通过目标进程复制该文件得到两个副本,再将该两个副本分别传输至应用程序A和应用程序B,从而应用程序A和应用程序B可以分别得到该文件的一个副本。
本发明实施例中,正在运行的N个应用程序分别生成资源请求,该资源请求用于请求调用目标资源;通过目标进程分别向N个应用程序传输目标资源;N个应用程序同时调用目标资源;其中,N为大于1的整数。通过该方案,在多个应用程序请求同一个资源的情况下,由于可以通过目标进程获取该多个应用程序请求的目标资源,并通过目标进程分别向多个应用程序中的每个应用程序传输该目标资源,即目标进程为访问目标资源的唯一进程,因此,即使多个应用程序请求同一个资源,也可以使多个应用程序同时调用目标资源,从而避免了资源冲突的问题,并且保证了多个应用程序正常运行。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的资源获取方法、装置及电子设备进行详细地说明。
如图1所示,本申请实施例提供一种资源获取方法,该方法的执行主体可以为资源获取装置,该方法可以包括下述的S101至S103。
S101、资源获取装置通过正在运行的N个应用程序分别生成资源请求。
其中,上述资源请求用于请求调用目标资源,N为大于1的整数。
可选的,上述目标资源可以为以下任一项:目标文件、目标传感器。
可选的,资源获取装置可以同时运行N个应用程序。该N个应用程序可以是资源获取装置通过用户触发而启动的应用程序,也可以是随着资源获取装置的操作***的启动而启动的应用程序。具体可以根据实际使用需求确定,本发明实施例不作限定。
可选的,在运行N个应用程序的过程中,N个应用程序的界面可以通过下述任意一种实现方式显示:
一种实现方式为,N个应用程序的界面均显示在资源获取装置的屏幕中,即N个应用程序均为资源获取装置前台运行的应用程序。例如,N个应用程序的界面可以通过分屏的方式显示在资源获取装置的屏幕中,即将屏幕划分为N个显示区域,一个显示区域对应显示一个应用程序的界面。可以理解的是,N个应用程序的界面也可以通过叠加的方式均显示在资源获取装置的屏幕中。
另一种实现方式为,N个应用程序中一部分应用程序的界面显示在资源获取装置的屏幕中,另一部分应用程序在后台运行,即N个应用程序中的一部分应用程序前台运行,N个应用程序中的另一部分应用程序后台运行。
可选的,当N为大于或等于2的整数时,N个应用程序向资源获取装置传输资源请求的时间可以相同,也可以不同。例如,以N个应用程序包括应用程序A和应用程序B为例,应用程序A可以在应用程序B传输资源请求之前向资源获取装置传输资源请求;也可以在应用程序B传输资源请求之后向资源获取装置传输资源请求;还可以在应用程序B传输资源请求的同时向资源获取装置传输资源请求。
可选的,上述资源请求可以用于请求资源获取装置中的目标文件,如图片和文档等,也可以用于请求资源获取装置中的目标传感器,如摄像头和话筒等。本发明实施例对N个应用程序传输的资源请求,请求获取的资源的类型不作限定,可以根据实际使用需求确定。
需要说明的是,上述N个应用程序传输的资源请求用于请求相同的资源。例如,在应用程序A传输的资源请求用于请求获取目标图片的情况下,应用程序B传输的资源请求也用于请求获取该目标图片。
S102、资源获取装置通过目标进程分别向N个应用程序传输目标资源。
本发明实施例中,资源获取装置中的N个应用程序可以将资源请求传输至资源获取装置的处理器。在资源获取装置的处理器获取到该资源请求后,资源获取装置的处理器可以根据该资源请求确定目标资源,并通过目标进程获取该目标资源。之后,资源获取装置可以通过目标进程分别向该N个应用程序传输该目标资源。
本发明实施例中,若N=1(即一个应用程序请求获取目标资源),则资源获取装置可以通过目标进程获取该目标资源,并通过目标进程向该一个应用程序传输目标资源,即执行上述S102;或者,该一个应用程序可以直接获取该目标资源,即采用现有技术的获取资源的方式获取该目标资源。若N为大于1的整数(即多个应用程序请求获取目标资源),则资源获取装置可以通过目标进程获取该目标资源,并通过目标进程分别向该多个应用程序中的每个应用程序传输目标资源。
可选的,目标进程可以通过管道(pipe)、命名管道(named pipe)、消息(message)队列、共享内存、内存映射(mapped memory)、信号量(semaphore)和套接字(socket)等进程间通信(inter-process communication,ipc)方式实现与N个应用程序之间的通信。
示例性的,以目标进程通过内存映射的方式实现与N个应用程序之间的通信为例。目标进程在获取到目标资源后,可以将目标资源存储到第一文件中。之后,N个应用程序可以通过文件通道(filechannel)的方式建立与第一文件的连接通道,并通过文件通道对第一文件进行读写操作。为了防止N个应用程序在对第一文件进行访问时产生冲突,N个应用程序中的每个应用程序都可以将第一文件映射到内存空间中,从而使得应用程序可以在内存空间中访问该第一文件中的目标资源。
具体的,目标进程通过内存映射的方式实现与N个应用程序之间的通信可以包括以下至少两种场景:
场景1:
N个应用程序只读(read only)访问通过目标进程获取的目标资源,即N个应用程序只需要获取目标资源中的数据,并不需要对其进行修改。上述应用程序在进行内存映射时,可以将映射模式设置成只读模式,并在内存空间中生成只读缓冲区,从而使得应用程序可以通过只读的方式访问该缓冲区中的内容。
场景2:
应用程序需要对获取到的目标资源进行修改。应用程序在进行内存映射时,可以将映射模式设置成读写(read-write)模式,并在内存空间中生成可读写缓冲区。应用程序在缓冲区中对该目标资源进行修改后,操作***会在某个时刻将修改后的资源写回到第一文件中,该写回操作为线程安全的操作。之后,目标进程可以检测第一文件是否发生修改,若目标进程检测到第一文件发生更改,则可以将修改后的内容反映到目标资源中;若目标进程未检测到第一文件发生更改,则可以无需执行任何操作。
可选的,上述目标进程检测第一文件是否发生修改的过程可以由目标进程主动发起,也可以在某个应用程序对第一文件进行修改后,由该应用程序触发目标进程发起。可以根据实际使用需求确定,本发明实施例不作限定。
可选的,在目标资源包括目标传感器,且N个应用程序包括第一应用程序和第二应用程序的情况下,资源获取装置可以通过目标进程向第一应用程序传输目标传感器采集的第一数据,并通过目标进程向第二应用程序传输目标传感器采集的第二数据。
示例性的,以第一应用程序为应用程序A,第二应用程序为应用程序B,第一数据为包括多个帧图像的数据流,第二数据为该数据流中的一帧图像为例。如果用户触发资源获取装置运行应用程序A的视频通话功能,那么应用程序A需要向资源获取装置传输第一数据请求,该第一数据请求可以用于请求访问摄像头采集的数据流。在资源获取装置获取到该第一数据请求后,可以通过目标进程获取摄像头采集的数据流,并将该数据流确定为第一数据,以及向应用程序A传输该数据流,从而保证资源获取装置可以通过应用程序A与其他资源获取装置保持正常的视频通话。在应用程序A与其他资源获取装置保持正常的视频通话的过程中,如果用户触发资源获取装置运行应用程序B的扫码支付功能,那么应用程序B会生成第二数据请求,该第二数据请求用于请求访问摄像头采集的二维码图片,即摄像头采集的数据流中的其中一帧图像。资源获取装置获取到该第二数据请求后,可以通过目标进程获取摄像头采集的数据流,并从该数据流中确定一帧符合扫描需求的二维码图片,之后,资源获取装置可以将该符合扫描需求的二维码图片确定为第二数据,并向应用程序B传输该二维码图片,从而保证资源获取装置可以在应用程序A与其他资源获取装置保持正常视频通话的情况下,实现扫码支付功能。
需要说明的是,上述第一应用程序和第二应用程序是指正在运行且功能不同的应用程序,即第一应用程序和第二应用程序可以为不同应用程序中用于实现不同功能的子程序,也可以为一个应用中用于实现不同功能的子程序。
可选的,上述N个应用程序可以包括第三应用程序和第四应用程序。在资源获取装置通过目标进程分别向第三应用程序和第四应用程序传输目标资源后,第三应用程序可以对该目标资源执行第一操作,第四应用程序可以对该目标资源执行第二操作。
可选的,上述第一操作和第二操作可以为相同类型的操作,也可以为不同类型的操作。例如,在目标资源为文件的情况下,第一操作和第二操作可以为以下至少一项:编辑操作、删除操作、分享操作、复制操作、移动操作等。
示例性的,以第三应用程序为应用程序A,第四应用程序为应用程序B,第一操作为对目标资源的编辑操作,第二操作为对目标资源的分享操作为例。如果用户触发资源获取装置运行应用程序A,并想要通过应用程序A对目标文档进行编辑,如对目标文档中的内容进行增加、删除和改变等,那么应用程序A可以生成请求访问目标文档的资源请求。在资源获取装置获取到该资源请求后,可以通过目标进程获取目标文档,并对目标文档进行复制得到副本1,之后资源获取装置可以向应用程序A传输该副本1,从而应用程序A可以对该副本1进行编辑操作。在资源获取装置通过应用程序A对副本1进行编辑的过程中,如果用户触发资源获取装置运行应用程序B,并想要通过应用程序B向其他资源获取装置分享该目标文档,那么应用程序B可以生成请求访问目标文档的资源请求。在资源获取装置获取到该资源请求后,可以通过目标进程获取目标文档,并对目标文档进行复制得到副本2,之后资源获取装置可以向应用程序B传输该副本2,从而使应用程序B可以向其他资源获取装置分享该目标文档。在资源获取装置通过应用程序A完成对副本1的编辑后,资源获取装置可以将目标文档替换为该副本1。
S103、资源获取装置通过N个应用程序同时调用目标资源。
资源获取装置通过目标进程分别向N个应用程序传输目标资源后,N个应用程序可以同时调用目标资源,并使用该目标资源执行对应的操作。例如,若目标资源为摄像头,N个应用程序为应用程序A中用于实现不同功能的子程序,则应用程序A可以在保持正常视频通话的同时,实现扫码支付功能。
本申请实施例中,在多个应用程序请求同一个资源的情况下,由于可以通过目标进程获取该多个应用程序请求的目标资源,并通过目标进程分别向多个应用程序中的每个应用程序传输该目标资源,即目标进程为访问目标资源的唯一进程,因此,即使多个应用程序请求同一个资源,也可以使多个应用程序同时调用目标资源,从而避免了资源冲突的问题,并且保证了多个应用程序正常运行。
可选的,为了实现资源获取装置通过目标进程传输目标资源的目的,资源获取装置可以先创建一个目标进程。具体的,资源获取装置可以在正在运行N个应用程序,且N个应用程序尚未生成资源请求的情况下,创建目标进程,也可以在正在运行的N个应用程序生成资源请求的情况下,创建目标进程。
示例性的,结合图1,如图2所示,在上述S102之前,本发明实施例提供的资源获取方法还可以包括下述的S104。
S104、资源获取装置在正在运行N个应用程序,且N个应用程序尚未生成资源请求的情况下,创建目标进程;或者,在正在运行的N个应用程序分别生成资源请求之后,创建目标进程。
可选的,资源获取装置可以在符合预设条件的情况下创建目标进程,也可以在获取到用户目标输入的情况下创建目标进程。
可选的,上述预设条件可以为资源获取装置正在运行N个应用程序,且该N个应用程序尚未生成资源请求,也可以为资源获取装置通过正在运行的N个应用程序分别生成资源请求,还可以为资源获取装置在一个应用程序占用目标资源的情况下,获取到另一个应用程序生成的对目标资源的资源请求。具体的,资源获取装置在符合预设条件的情况下创建目标进程的方式可以包括以下三种:
方式一
在上述S101之前,资源获取装置可以执行上述S104。即资源获取装置可以在正在运行N个应用程序,且N个应用程序尚未生成资源请求的情况下,创建目标进程。
在资源获取装置运行M个应用程序的情况下,M个应用程序中可能会存在N个应用程序请求访问同一资源的情况,其中,M为大于1的整数,且M大于或等于N。因此,资源获取装置可以在运行M个应用程序,即正在运行N个应用程序的情况下,创建目标进程。当N个应用程序需要访问同一资源时,N个应用程序可以向目标进程传输资源请求,相应的,目标进程可以获取N个应用程序传输的资源请求。之后,目标进程可以根据该资源请求获取目标资源,并将该目标资源传输至N个应用程序。
方式二
在上述S101之后,在上述S102之前,资源获取装置可以执行上述S104。即资源获取装置可以在正在运行的N个应用程序分别生成资源请求之后,创建目标进程。
当正在运行的N个应用程序需要访问同一资源时,N为大于1的整数,N个应用程序可以生成资源请求。资源获取装置获取到N个应用程序生成的资源请求后,可以创建目标进程。之后,资源获取装置可以调用目标进程获取目标资源,并通过目标进程将该目标资源传输至N个应用程序。
方式三
如果资源获取装置在一个应用程序占用目标资源的情况下,获取到另一个应用程序生成的对目标资源的资源请求,那么资源获取装置可以将占用目标资源的应用程序挂起,并创建目标资源,之后,资源获取装置可以通过目标进程获取目标资源,并通过目标进程将该目标资源传输至被挂起的应用程序和生成资源请求的应用程序,从而使被挂起的应用程序结束挂起状态。
可选的,上述目标输入可以为触控输入、语音输入或手势输入等。例如,该触控输入可以为用户对资源获取装置显示的目标控件的点击输入或长按输入等,该目标控件可以用于触发资源获取装置创建目标进程。
示例性的,以目标输入为用户对资源获取装置显示的目标控件的点击输入为例。当用户想要触发两个应用程序请求同一资源时,用户可以对目标控件进行点击输入,资源获取装置可以响应于该点击输入,创建目标进程。
本发明实施例中,由于同一资源不能被多个应用程序同时访问,因此,资源获取装置可以在获取到多个应用程序中的任意应用程序生成的资源请求之后,创建目标进程;也可以在资源获取装置正在运行N个应用程序的情况下,创建目标进程。从而使资源获取装置可以通过目标进程获取目标资源,并将获取的目标资源分别传输至多个应用程序。
可选的,在创建目标进程之后,用户并不知道当前可以触发多个应用程序同时请求同一资源,因此,资源获取装置可以在创建目标进程之后,显示目标标识,该目标标识可以用于指示目标进程正在运行。
示例性的,结合图2,如图3所示,在本发明实施例提供的资源获取方法中,在上述S104之后,本发明实施例提供的资源获取方法还可以包括下述的S105。
S105、资源获取装置显示目标标识。
其中,上述目标标识可以用于指示目标进程正在运行。
可选的,资源获取装置可以将上述目标标识显示在屏幕的任意区域。例如,资源获取装置可以将目标标识显示在屏幕的中心区域、屏幕中靠近侧边的区域或屏幕中的顶角区域等。
可选的,上述目标标识的显示位置可以根据用户输入发生改变。例如,目标标识的初始显示位置为屏幕的左上角区域,当用户对目标标识进行拖动输入后,资源获取装置可以响应于该拖动输入,取消在屏幕的左上角区域显示目标标识,并在屏幕的右下角区域显示目标标识。
需要说明的是,本发明实施例对于目标标识的形状、大小、颜色和透明度等显示特征不作限定。
示例性的,目标标识可以为标注有“共享管理”的圆形标识。假设资源获取装置运行的应用程序A处于视频通话状态、资源获取装置运行的应用程序B处于扫码支付状态。如图4中的(a)所示,在应用程序A和应用程序B处于分屏显示模式的情况下,资源获取装置可以在两个界面的分界线上显示该圆形标识。如图4中的(b)所示,在应用程序A和应用程序B处于叠加显示模式的情况下,资源获取装置可以在区域面积较大的界面上显示该圆形标识。
本发明实施例中,由于资源获取装置在创建目标进程之后,可以显示用于指示目标进程正在运行的目标标识,因此,用户可以根据该目标标识确定目标进程正在运行。如此,一方面,用户可以在目标进程已经创建的情况下,触发资源获取装置的多个应用程序请求同一资源;另一方面,用户可以及时了解到目标进程的运行情况。
可选的,由于用户可能并不想让多个应用程序同时访问同一资源,因此,在资源获取装置显示目标标识后,用户可以对目标标识进行第一输入,从而使资源获取装置响应于第一输入,结束目标进程。在资源获取装置结束目标进程之后,如果用户触发资源获取装置运行多个应用程序,且多个应用程序中存在至少两个应用程序请求访问同一资源,那么资源获取装置可以向至少两个应用程序中优先级最高的一个应用程序传输目标资源。
示例性的,结合图3,如图5所示,在本发明实施例提供的资源获取方法中,在上述S103之后,本发明实施例提供的资源获取方法还可以包括下述的S106至S108。
S106、资源获取装置接收用户对目标标识的第一输入。
可选的,上述第一输入可以为用户对目标标识的触控输入。例如,第一输入可以为用户对目标标识的点击输入或长按输入等。
S107、资源获取装置响应于第一输入,结束目标进程。
可选的,资源获取装置可以响应于第一输入,结束目标进程,并取消显示目标标识。
S108、若正在运行的至少两个应用程序分别生成资源请求,则资源获取装置通过目标应用程序调用目标资源。
其中,上述目标应用程序为上述至少两个应用程序中优先级最高的一个应用程序。
可选的,资源获取装置可以将至少两个应用程序中最先传输资源请求的应用程序确定为优先级最高的一个应用程序,也可以将至少两个应用程序中使用频率最高的应用程序确定为优先级最高的一个应用程序,还可以将至少两个应用程序中处于前台运行状态的应用程序确定为优先级最高的一个应用程序。具体可以根据实际使用需求确定,本发明实施例不作限定。
可选的,在资源获取装置向目标应用程序传输目标资源后,可以为目标资源添加资源锁,当目标资源处于加锁状态时,其他应用程序无法对该目标资源进行访问。在目标应用程序完成对目标资源的处理后,资源获取装置可以释放该目标资源的资源锁,即将目标资源的加锁状态调整为非加锁状态,从而使其他应用程序可以访问该目标资源。
示例性的,以目标资源为文件M为例。如图6中的(a)所示,在资源获取装置执行目标进程的过程中,若应用程序A和应用程序B分别生成获取文件M的资源请求,则目标进程可以将调用的文件M分别传输至应用程序A和应用程序B,之后,应用程序A可以对文件M进行编辑,应用程序B可以对文件M进行分享。如图6中的(b)所示,在资源获取装置响应于第一输入,结束目标进程之后,若应用程序A和应用程序B分别生成获取文件M的资源请求,且应用程序A的优先级高于应用程序B的优先级,则资源获取装置可以将调用的文件M传输至应用程序A,并通过应用程序A对文件M进行加锁和编辑。在文件M处于加锁状态的情况下,应用程序B无法对文件M进行删除操作。
需要说明的是,上述如图5所示的实施例是以资源获取装置在执行上述S101至S103之后,执行S106至S108为例进行说明的,可以理解的是,在S105之后,在资源获取装置未执行上述S102和S103情况下,资源获取装置也可以执行S106至S108。
本发明实施例中,由于资源获取装置可以响应于第一输入,结束目标进程,并在多个应用程序中存在至少两个应用程序生成对同一资源的资源请求的情况下,向至少两个应用程序中优先级最高的一个应用程序传输调用的目标资源,因此,用户可以根据实际使用需求控制资源获取装置是否运行目标进程,从而增加了资源获取装置运行目标进程的灵活性。
需要说明的是,本申请实施例提供的资源获取方法,执行主体可以为资源获取装置,或者该资源获取装置中的用于执行资源获取方法的控制模块。本申请实施例中以资源获取装置执行资源获取方法为例,说明本申请实施例提供的资源获取装置。
如图7所示,本申请实施例提供一种资源获取装置700,该资源获取装置700可以为电子设备,或者为电子设备中的一个功能模块。该资源获取装置700可以包括处理模块701和通信模块702。处理模块701,可以用于通过正在运行的N个应用程序分别生成资源请求,资源请求用于请求调用目标资源。通信模块702,可以用于通过目标进程分别向N个应用程序传输目标资源。处理模块701,还可以用于通过N个应用程序同时调用通信模块702传输的目标资源;其中,N为大于1的整数。
可选的,本申请实施例中,处理模块701,还可以用于在正在运行N个应用程序,且N个应用程序尚未生成资源请求的情况下,创建目标进程;或者,在正在运行的N个应用程序分别生成资源请求之后,创建目标进程。
可选的,结合图7,如图8所示,本申请实施例提供的资源获取装置700还可以包括显示模块703。显示模块703,可以用于处理模块701创建目标进程之后,显示目标标识,目标标识用于指示目标进程正在运行。
可选的,结合图7,如图8所示,本申请实施例提供的资源获取装置700还可以包括接收模块704。接收模块704,可以用于显示模块703显示目标标识之后,接收用户对目标标识的第一输入。处理模块701,还可以用于响应于接收模块704接收的第一输入,结束目标进程。通信模块702,还可以用于若正在运行的至少两个应用程序分别生成资源请求,则目标应用程序调用目标资源,目标应用程序为至少两个应用程序中优先级最高的一个应用程序。
可选的,本申请实施例中,目标资源可以为以下任一项:目标文件、目标传感器。
可选的,本申请实施例中,目标资源包括目标传感器;N个应用程序包括第一应用程序和第二应用程序。处理模块701,具体可以用于通过目标进程向第一应用程序传输目标传感器采集的第一数据,并通过目标进程向第二应用程序传输目标传感器采集的第二数据。
本申请实施例中,在多个应用程序请求同一个资源的情况下,由于资源获取装置可以通过目标进程获取该多个应用程序请求的目标资源,并通过目标进程分别向多个应用程序中的每个应用程序传输该目标资源,即目标进程为访问目标资源的唯一进程,因此,即使多个应用程序请求同一个资源,也可以使多个应用程序同时调用目标资源,从而避免了资源冲突的问题,并且保证了多个应用程序正常运行。
本申请实施例中的资源获取装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(networkattached storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的资源获取装置可以为具有操作***的装置。该操作***可以为安卓(Android)操作***,可以为ios操作***,还可以为其他可能的操作***,本申请实施例不作具体限定。
本申请实施例提供的资源获取装置可以为上述方法实施例中的电子设备,或为电子设备的一个功能模板,其能够实现图1至图6的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选的,本申请实施例还提供一种电子设备900,包括如图9所示的处理器901,存储器902,存储在存储器902上并可在处理器901上运行的程序或指令,该程序或指令被处理器901执行时实现上述资源获取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要注意的是,本申请实施例中的电子设备包括上述的移动电子设备和非移动电子设备。
图10为实现本申请实施例的一种电子设备的硬件结构示意图。
电子设备1000包括但不限于:射频单元1001、网络模块1002、音频输出单元1003、输入单元1004、传感器1005、显示单元1006、用户输入单元1007、接口单元1008、存储器1009、以及处理器1010等部件。其中,输入单元1004可以包括图形处理器10041和麦克风10042,显示单元1006可以包括显示面板10061,用户输入单元1007可以包括触控面板10071和其他输入设备10072,存储器1009可以包括应用程序10091和操作***10092。
本领域技术人员可以理解,电子设备1000还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理***与处理器1010逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。图10中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
处理器1010,可以用于通过正在运行的N个应用程序分别生成资源请求,资源请求用于请求调用目标资源;并通过目标进程分别向N个应用程序传输目标资源;以及通过N个应用程序同时调用目标资源;其中,N为大于1的整数。
本发明实施例中,在多个应用程序请求同一个资源的情况下,由于电子设备可以通过目标进程获取该多个应用程序请求的目标资源,并通过目标进程分别向多个应用程序中的每个应用程序传输该目标资源,即目标进程为访问目标资源的唯一进程,因此,即使多个应用程序请求同一个资源,也可以使多个应用程序同时调用目标资源,从而避免了资源冲突的问题,并且保证了多个应用程序正常运行。
可选的,处理器1010,还可以用于在正在运行N个应用程序,且N个应用程序尚未生成资源请求的情况下,创建目标进程;或者,在正在运行的N个应用程序分别生成资源请求之后,创建目标进程。
本发明实施例中,由于同一资源不能被多个应用程序同时访问,因此,电子设备可以在获取到多个应用程序中的任意应用程序生成的资源请求之后,创建目标进程;也可以在电子设备正在运行N个应用程序的情况下,创建目标进程。从而使电子设备可以通过目标进程获取目标资源,并将获取的目标资源分别传输至多个应用程序。
可选的,显示单元1006,可以用于处理器1010创建目标进程之后,显示目标标识,目标标识用于指示目标进程正在运行。
本发明实施例中,由于电子设备在创建目标进程之后,可以显示用于指示目标进程正在运行的目标标识,因此,用户可以根据该目标标识确定目标进程正在运行。如此,一方面,用户可以在目标进程已经创建的情况下,触发电子设备的多个应用程序请求同一资源;另一方面,用户可以及时了解到目标进程的运行情况。
可选的,用户输入单元1007可以用于显示单元1006显示目标标识之后,接收用户对目标标识的第一输入。
处理器1010,可以用于响应于用户输入单元1007接收的第一输入,结束目标进程。若正在运行的至少两个应用程序分别生成资源请求,则目标应用程序调用目标资源,目标应用程序为至少两个应用程序中优先级最高的一个应用程序。
本发明实施例中,由于资源获取装置可以响应于第一输入,结束目标进程,并在多个应用程序中存在至少两个应用程序生成对同一资源的资源请求的情况下,向至少两个应用程序中优先级最高的一个应用程序传输调用的目标资源,因此,用户可以根据实际使用需求控制资源获取装置是否运行目标进程,从而增加了资源获取装置运行目标进程的灵活性。
应理解的是,本申请实施例中,输入单元1004可以包括图形处理器(GraphicsProcessing Unit,GPU)10041和麦克风10042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1006可包括显示面板10061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板10061。用户输入单元1007包括触控面板10071以及其他输入设备10072。触控面板10071,也称为触摸屏。触控面板10071可包括触摸检测装置和触摸控制器两个部分。其他输入设备10072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器1009可用于存储软件程序以及各种数据,包括但不限于应用程序10091和操作***10092。处理器1010可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1010中。
本申请实施例还提供一种可读存储介质,可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述资源获取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,处理器为上述实施例中的电子设备中的处理器。可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-only memory,ROM)、随机存取存储器(randomaccess memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现上述资源获取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为***级芯片、***芯片、芯片***或片上***芯片等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例提供的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (14)
1.一种资源获取方法,其特征在于,所述方法包括:
正在运行的N个应用程序分别生成资源请求,所述资源请求用于请求调用目标资源;
通过目标进程分别向所述N个应用程序传输所述目标资源;
所述N个应用程序同时调用所述目标资源;
其中,N为大于1的整数。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在正在运行所述N个应用程序,且所述N个应用程序尚未生成资源请求的情况下,创建所述目标进程;或者,
在正在运行的所述N个应用程序分别生成资源请求之后,创建所述目标进程。
3.根据权利要求2所述的方法,其特征在于,所述创建所述目标进程之后,所述方法还包括:
显示目标标识,所述目标标识用于指示所述目标进程正在运行。
4.根据权利要求3所述的方法,其特征在于,所述显示目标标识之后,所述方法还包括:
接收用户对所述目标标识的第一输入;
响应于所述第一输入,结束所述目标进程;
若正在运行的至少两个应用程序分别生成所述资源请求,则目标应用程序调用所述目标资源,所述目标应用程序为所述至少两个应用程序中优先级最高的一个应用程序。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述目标资源为以下任一项:目标文件、目标传感器。
6.根据权利要求5所述的方法,其特征在于,所述目标资源包括所述目标传感器;
所述N个应用程序包括第一应用程序和第二应用程序;
所述通过目标进程分别向所述N个应用程序传输所述目标资源,包括:
通过所述目标进程向所述第一应用程序传输所述目标传感器采集的第一数据,并通过所述目标进程向所述第二应用程序传输所述目标传感器采集的第二数据。
7.一种资源获取装置,其特征在于,所述资源获取装置包括处理模块和通信模块;
所述处理模块,用于通过正在运行的N个应用程序分别生成资源请求,所述资源请求用于请求调用目标资源;
所述通信模块,用于通过目标进程分别向所述N个应用程序传输所述目标资源;
所述处理模块,还用于通过所述N个应用程序同时调用所述通信模块传输的所述目标资源;
其中,N为大于1的整数。
8.根据权利要求7所述的资源获取装置,其特征在于,
所述处理模块,还用于在正在运行所述N个应用程序,且所述N个应用程序尚未生成资源请求的情况下,创建所述目标进程;或者,在正在运行的所述N个应用程序分别生成资源请求之后,创建所述目标进程。
9.根据权利要求8所述的资源获取装置,其特征在于,所述资源获取装置还包括显示模块;
所述显示模块,用于在所述创建所述目标进程之后,显示目标标识,所述目标标识用于指示所述目标进程正在运行。
10.根据权利要求9所述的资源获取装置,其特征在于,所述资源获取装置还包括接收模块;
所述接收模块,用于在所述显示模块显示目标标识之后,接收用户对所述目标标识的第一输入;
所述处理模块,还用于响应于所述接收模块接收的所述第一输入,结束所述目标进程;
所述通信模块,还用于若正在运行的至少两个应用程序分别生成所述资源请求,则目标应用程序调用所述目标资源,所述目标应用程序为所述至少两个应用程序中优先级最高的一个应用程序。
11.根据权利要求7至10中任一项所述的资源获取装置,其特征在于,所述目标资源为以下任一项:目标文件、目标传感器。
12.根据权利要求11所述的资源获取装置,其特征在于,所述目标资源包括所述目标传感器;所述N个应用程序包括第一应用程序和第二应用程序;
所述处理模块,具体用于通过所述目标进程向所述第一应用程序传输所述目标传感器采集的第一数据,并通过所述目标进程向所述第二应用程序传输所述目标传感器采集的第二数据。
13.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-6中任一项所述的资源获取方法的步骤。
14.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-6中任一项所述的资源获取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010470948.9A CN111638966A (zh) | 2020-05-28 | 2020-05-28 | 资源获取方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010470948.9A CN111638966A (zh) | 2020-05-28 | 2020-05-28 | 资源获取方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111638966A true CN111638966A (zh) | 2020-09-08 |
Family
ID=72331327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010470948.9A Pending CN111638966A (zh) | 2020-05-28 | 2020-05-28 | 资源获取方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111638966A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112256536A (zh) * | 2020-10-29 | 2021-01-22 | 维沃移动通信(深圳)有限公司 | 信息显示方法及装置 |
CN112379877A (zh) * | 2020-11-13 | 2021-02-19 | 武汉蓝星科技股份有限公司 | 一种嵌入式端多进程gui程序的编程*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102006241A (zh) * | 2010-12-17 | 2011-04-06 | 天津曙光计算机产业有限公司 | 一种多个应用共享一个缓冲区的报文接收方法 |
CN104918112A (zh) * | 2014-03-13 | 2015-09-16 | 深圳Tcl新技术有限公司 | 相机资源的应用方法及装置 |
CN106897146A (zh) * | 2017-02-09 | 2017-06-27 | 青岛海信移动通信技术股份有限公司 | 一种终端的麦克风的数据处理方法和具有麦克风的终端 |
CN110825708A (zh) * | 2019-09-23 | 2020-02-21 | 武汉智美互联科技有限公司 | 一种多进程文件读写的方法 |
CN111105521A (zh) * | 2019-11-21 | 2020-05-05 | 视联动力信息技术股份有限公司 | 一种数据读取方法和装置 |
-
2020
- 2020-05-28 CN CN202010470948.9A patent/CN111638966A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102006241A (zh) * | 2010-12-17 | 2011-04-06 | 天津曙光计算机产业有限公司 | 一种多个应用共享一个缓冲区的报文接收方法 |
CN104918112A (zh) * | 2014-03-13 | 2015-09-16 | 深圳Tcl新技术有限公司 | 相机资源的应用方法及装置 |
CN106897146A (zh) * | 2017-02-09 | 2017-06-27 | 青岛海信移动通信技术股份有限公司 | 一种终端的麦克风的数据处理方法和具有麦克风的终端 |
CN110825708A (zh) * | 2019-09-23 | 2020-02-21 | 武汉智美互联科技有限公司 | 一种多进程文件读写的方法 |
CN111105521A (zh) * | 2019-11-21 | 2020-05-05 | 视联动力信息技术股份有限公司 | 一种数据读取方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112256536A (zh) * | 2020-10-29 | 2021-01-22 | 维沃移动通信(深圳)有限公司 | 信息显示方法及装置 |
CN112379877A (zh) * | 2020-11-13 | 2021-02-19 | 武汉蓝星科技股份有限公司 | 一种嵌入式端多进程gui程序的编程*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220342850A1 (en) | Data transmission method and related device | |
WO2014109502A1 (en) | Touch event processing method and portable device implementing the same | |
KR101343587B1 (ko) | 방향 정보를 이용한 데이터 전송 방법 및 상기 방법을 채용한 휴대 전자 기기 | |
US20230259246A1 (en) | Window Display Method, Window Switching Method, Electronic Device, and System | |
CN111190748B (zh) | 数据共享方法、装置、设备及存储介质 | |
EP4336354A1 (en) | Distributed display method for application interface, and terminal | |
WO2021098695A1 (zh) | 信息分享方法及电子设备 | |
CN112749362B (zh) | 控件创建方法、装置、设备及存储介质 | |
CN113794795B (zh) | 信息共享方法、装置、电子设备及可读存储介质 | |
CN114077411A (zh) | 数据传输方法和设备 | |
CN111638966A (zh) | 资源获取方法、装置及电子设备 | |
JP6982277B2 (ja) | 情報端末装置、情報処理システムおよび表示制御プログラム | |
CN111259441B (zh) | 设备控制方法、装置、存储介质及电子设备 | |
JP2020516983A (ja) | リアルタイム協働用のライブインク存在 | |
CN112449110B (zh) | 图像处理方法、装置及电子设备 | |
US11507633B2 (en) | Card data display method and apparatus, and storage medium | |
CN113282213A (zh) | 界面显示方法及装置 | |
CN111817944A (zh) | 图片分享的方法、装置及电子设备 | |
WO2022242628A1 (zh) | 投屏方法、装置、设备及存储介质 | |
CN112312058B (zh) | 交互方法、装置和电子设备 | |
CN113807831A (zh) | 支付方法和装置 | |
CN112711636A (zh) | 数据同步方法、装置、设备及介质 | |
CN117827709B (zh) | 直接内存访问的实现方法、装置、设备及存储介质 | |
CN114398129B (zh) | 共享对象分享方法、装置、电子设备及可读存储介质 | |
CN111414563B (zh) | 网页交互的方法、装置、计算机设备和存储介质 |
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 |