CN117555658A - 管理应用运行的方法和电子设备 - Google Patents

管理应用运行的方法和电子设备 Download PDF

Info

Publication number
CN117555658A
CN117555658A CN202311316019.2A CN202311316019A CN117555658A CN 117555658 A CN117555658 A CN 117555658A CN 202311316019 A CN202311316019 A CN 202311316019A CN 117555658 A CN117555658 A CN 117555658A
Authority
CN
China
Prior art keywords
function
application
electronic device
electronic equipment
allowed
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.)
Granted
Application number
CN202311316019.2A
Other languages
English (en)
Other versions
CN117555658B (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202311316019.2A priority Critical patent/CN117555658B/zh
Publication of CN117555658A publication Critical patent/CN117555658A/zh
Application granted granted Critical
Publication of CN117555658B publication Critical patent/CN117555658B/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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/4401Bootstrapping
    • G06F9/442Shutdown
    • 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/44552Conflict resolution, i.e. enabling coexistence of conflicting executables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/484Precedence

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例提供了一种管理应用运行的方法和电子设备,该方法由电子设备执行,包括:在电子设备的第一功能开启时,确定第二功能是否已开启,其中,第一功能用于管理电子设备中的应用运行,第二功能对应的运行优先级大于第一功能对应的运行优先级;若第二功能已开启,则关闭第二功能,或者,在接收到用户触发电子设备中的第一应用执行第二功能的操作,但电子设备确定不允许第一应用执行第二功能时,不响应执行第二功能;若第二功能未开启,则关闭电子设备中第二功能的设置入口。该方法可以使得电子设备的管控功能更好的实现管理与限制作用,提高用户的使用体验。

Description

管理应用运行的方法和电子设备
技术领域
本申请涉及电子技术领域,具体涉及一种管理应用运行的方法和电子设备。
背景技术
随着电子设备的不断发展,电子设备(例如手机、平板电脑等)所能实现的功能和承载的信息都越来越多。为了更好的管理以及使用电子设备,当前已有例如健康使用手机等管控功能,可以设置手机使用时长、应用使用限制及使用时长、手机模式等。
但是研究发现,在健康使用手机等管控功能开启的情况下,如果有其他冲突的功能也开启,则可能导致健康使用手机等功能失效,无法对原本应限制使用的应用进行限制,影响用户的使用体验。
发明内容
本申请提供了一种管理应用运行的方法和电子设备,可以使得电子设备的管控功能更好的实现管理与限制作用,提高用户体验。
第一方面,本申请提供一种管理应用运行的方法,该方法由电子设备执行,包括:在电子设备的第一功能开启时,确定第二功能是否已开启,其中,第一功能用于管理电子设备中的应用运行,第二功能对应的运行优先级大于第一功能对应的运行优先级;若第二功能已开启,则关闭第二功能,或者,在接收到用户触发电子设备中的第一应用执行第二功能的操作,但电子设备确定不允许第一应用执行第二功能时,不响应执行第二功能;若第二功能未开启,则关闭电子设备中第二功能的设置入口。
其中,电子设备可以开启多种功能,以为用户提供丰富的体验,然而因各功能之间的运行优先级不同,可能存在功能之间有运行冲突的问题。基于此,本申请在电子设备的第一功能开启时,可以判断第二功能是否开启,如果第二功能已开启的话,为避免第一功能和第二功能相冲突,则电子设备可以主动关闭第二功能,或者,在用户触发第一应用执行第二功能时,不允许第一应用执行第二功能。如果第二功能没有开启的话,则电子设备可以主动关闭第二功能的设置入口,使用户不能再开启第二功能。
上述第一功能用于管理电子设备中的应用运行,例如可以为健康使用手机功能。第二功能对应的运行优先级大于第一功能对应的运行优先级,即第二功能的运行可能会使第一功能失效,例如第二功能为屏幕锁定功能。由此,电子设备采用上述技术方案可以将与第一功能相冲突的功能暂时关闭或不响应,以使电子设备的管控功能更好的实现管理与限制作用。
可选地,电子设备可以接收到用户对第一功能的开启操作,以触发第一功能开启。
可选地,电子设备可以获取第二功能的状态信息以确定第二功能是否已开启,例如从数据库中获取第二功能的状态信息。
结合第一方面,在第一方面的有些实现方式中,在上述关闭所述第二功能之前,上述方法还包括:缓存第二功能的开启状态信息。
其中,如果电子设备主动将第二功能关闭的话,假如之后电子设备中的第一功能也被关闭,为保证用户能继续使用第二功能,则电子设备需要恢复第二功能原本的开启状态。因此,电子设备在关闭第二功能之前,还可以将第二功能的开启状态信息进行缓存。可选地,电子设备可以向内存申请一块缓存(buffer)来存储第二功能的开启状态信息,或者可以新建一个数据库来缓存第二功能的开启状态信息。由此,电子设备后续可以自动在第一功能和第二功能之间进行切换,进一步提高用户的使用体验。
结合第一方面,在第一方面的有些实现方式中,在上述关闭所述第二功能的情况下,上述方法还包括:关闭电子设备中第二功能的设置入口。
其中,在电子设备关闭了第二功能的情况下,为避免用户又去主动打开第二功能,则电子设备还可以关闭电子设备中第二功能的设置入口,使用户不能再开启屏幕固定功能,进一步避免了第二功能与第一功能之间的冲突。
结合第一方面,在第一方面的有些实现方式中,在上述关闭所述电子设备中所述第二功能的设置入口的情况下,上述方法还包括:取消显示对第二功能进行设置的界面。
可选地,电子设备可以在设置界面设置开启入口,例如设置开关控件,以供用户来开启第二功能,那么,如果电子设备关闭第二功能的设置入口的话,也可以取消显示对第二功能进行设置的界面。例如,电子设备可以将开关控件设置为不可操作的状态,或者隐藏显示开关控件,等等。
结合第一方面,在第一方面的有些实现方式中,在上述关闭所述第二功能之后,若接收到对第一功能的关闭操作且缓存的第二功能的状态信息为开启状态信息,则上述方法还包括:开启第二功能,以及开启电子设备中第二功能的设置入口。
在电子设备关闭第二功能之后,用户可能后续也会触发关闭第一功能,因此,若电子设备接收到用户对第一功能的关闭操作,并且上述所缓存的第二功能的状态信息为开启状态信息,则电子设备需要重启第二功能,以保持原有的运行状态。具体地,电子设备可以同时开启第二功能以及第二功能的设置入口。由此,电子设备可以自动在第一功能和第二功能之间进行切换,提高用户的使用体验。
结合第一方面,在第一方面的有些实现方式中,若第二功能已开启,在电子设备的第一界面上显示有第一控件,第一控件为触发执行第二功能的控件,则在关闭第二功能的情况下,上述方法还包括:在第一界面上取消显示第一控件。
通常情况下,第二功能开启时,可以在电子设备的第一界面上显示第一控件,该第一控件可以用于触发执行第二功能。因此,如果电子设备关闭了第二功能,则也可以在第一界面上取消显示上述第一控件,以避免用户对第一控件再次触控。
可选地,在第二功能为屏幕固定功能的情况下,第一界面可以为最近任务栏界面,第一控件可以为最近任务栏界面上的屏幕固定控件。
结合第一方面,在第一方面的有些实现方式中,上述接收到用户触发电子设备中的第一应用执行第二功能的操作,包括:在第一界面上接收到用户对第一控件的触发操作,第一界面上包括第一应用的任务界面,第一控件位于第一应用的任务界面上。
其中,由上述描述可知,在电子设备开启第一功能时,如果第二功能也开启,那么在接收到用户触发电子设备中的第一应用执行第二功能的操作,但电子设备确定不允许第一应用执行第二功能时,电子设备可以不响应执行第二功能。此步骤中,电子设备可以在第一界面上接收用户对第一控件的触发操作,以触发第一应用执行第二功能,此时,第一控件可以位于第一应用的任务界面上,电子设备可以通过对第一控件的触发操作确定当前的任务标识,进而确定对应的应用标识,即第一应用。这里的第一应用可以是电子设备中安装的任意一个可运行的应用。
然后,电子设备确定不允许第一应用执行第二功能,可以包括:根据电子设备的运行模式和/或第一应用的使用状态,确定不允许第一应用执行第二功能。
因本申请目的是要保证管控功能更好的实现管理与限制作用,因此,如果电子设备为限制模式或者第一应用当前处于被限制使用的状态等,则不允许第一应用执行第二功能。
具体地,上述根据电子设备的运行模式和/或第一应用的使用状态,确定不允许第一应用执行第二功能,包括:若电子设备的运行模式为第一模式,且第一应用的使用状态为限制使用状态,则确定不允许第一应用执行第二功能,第一模式表征电子设备中的应用都有权限运行,限制使用状态表征第一应用因运行时长达到了限额时长而不允许使用的状态。
其中,电子设备可以先判断当前电子设备是否为第一模式,如果是第一模式则再判断第一应用的使用状态是否为限制使用状态,如果第一应用的使用状态是限制使用状态,则电子设备不允许第一应用执行第二功能,由此实现对第一应用的管理运行。
可以理解,如果当前电子设备是第一模式,且第一应用的使用状态不是限制使用状态,则电子设备可以允许第一应用执行第二功能。由此,电子设备可以根据第一应用的使用状态对其进行灵活管理。
结合第一方面,在第一方面的有些实现方式中,上述根据电子设备的运行模式和/或第一应用的使用状态,确定不允许第一应用执行第二功能,包括:若电子设备的运行状态为第二模式,则确定不允许第一应用执行第二功能,第二模式表征电子设备中的部分应用没有权限运行。
其中,在当前电子设备不是第一模式的情况下,如果电子设备是第二模式,则电子设备不允许第一应用执行第二功能。
可选地,上述第一模式可以为家长模式,第二模式可以为儿童模式,即在儿童模式下不允许执行第二功能,以良好的引导儿童使用电子设备。
结合第一方面,在第一方面的有些实现方式中,上述电子设备确定不允许第一应用执行第二功能,包括:若第一应用的应用标识存储于第一存储空间,则确定不允许第一应用执行第二功能,第一存储空间存储有因运行时长达到了限额时长而不允许使用的应用的标识。
在该实现方式中,电子设备在对第一应用的运行时长进行管理时,如果一个应用的运行时长达到了限额时长,则可以将该应用的标识存储于第一存储空间,例如第一存储空间为数据库。那么电子设备还可以判断第一应用的应用标识是否存储于第一存储空间,如果存储于第一存储空间,则不允许第一应用执行第二功能,由此实现对第一应用的管理运行。
结合第一方面,在第一方面的有些实现方式中,上述电子设备确定不允许第一应用执行第二功能,包括:若第一应用的应用标识未存储于第一存储空间,但电子设备的运行状态为第二模式,则确定不允许第一应用执行第二功能。
在该实现方式中,在第一应用没有处于限制使用状态的情况下(即第一应用的应用标识未存储于第一存储空间),电子设备还可以进一步判断当前电子设备是否处于第二模式(如儿童模式),在处于第二模式的情况下则不允许第一应用执行第二功能,以更准确的对第一应用进行管控。
结合第一方面,在第一方面的有些实现方式中,在不响应执行第二功能的情况下,上述方法还包括:显示不允许执行第二功能的提示信息。
其中,在电子设备不响应执行第二功能的情况下,即不允许第一应用执行第二功能,则电子设备还可以显示不允许执行第二功能的提示信息。示例性地,可以提示“当前应用处于限制使用中,暂不允许启用屏幕固定功能”的信息,以提醒用户当前不允许执行第二功能的原因,进一步提高用户的使用体验。
第二方面,本申请提供一种装置,该装置包含在电子设备中,该装置具有实现上述第一方面及上述第一方面的可能实现方式中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,接收模块或单元、处理模块或单元等。
第三方面,本申请提供一种电子设备,电子设备包括:处理器、存储器和接口;处理器、存储器和接口相互配合,使得电子设备执行第一方面的技术方案中任意一种方法。
第四方面,本申请提供一种芯片,包括处理器。处理器用于读取并执行存储器中存储的计算机程序,以执行第一方面及其任意可能的实现方式中的方法。
可选地,芯片还包括存储器,存储器与处理器通过电路或电线连接。
进一步可选地,芯片还包括通信接口。
第五方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储了计算机程序,当计算机程序被处理器执行时,使得该处理器执行第一方面的技术方案中任意一种方法。
第六方面,本申请提供一种计算机程序产品,计算机程序产品包括:计算机程序代码,当计算机程序代码在电子设备上运行时,使得该电子设备执行第一方面的技术方案中任意一种方法。
附图说明
图1是本申请实施例提供的一例健康使用手机功能的设置界面示意图;
图2是本申请实施例提供的另一例健康使用手机功能的设置界面示意图;
图3是本申请实施例提供的又一例健康使用手机功能的设置界面示意图;
图4是本申请实施例提供的一例健康使用手机功能的运行界面示意图;
图5是本申请实施例提供的一例屏幕固定功能的设置界面示意图;
图6是本申请实施例提供的一例屏幕固定功能的运行界面示意图;
图7是本申请实施例提供的一例健康使用手机功能和屏幕固定功能冲突的界面示意图;
图8是本申请实施例提供的一例电子设备的结构示意图;
图9是本申请实施例提供的一例电子设备的软件结构框图;
图10是本申请实施例提供的一例管理应用运行的方法的流程示意图;
图11是本申请实施例提供的一例取消显示屏幕固定控件的界面示意图;
图12是本申请实施例提供的一例关闭屏幕固定功能的设置入口的界面示意图;
图13是本申请实施例提供的另一例管理应用运行的方法的流程示意图;
图14是本申请实施例提供的一例确定第一结果的过程示意图;
图15是本申请实施例提供的一例不允许启用屏幕固定功能的提示界面示意图;
图16是本申请实施例提供的又一例管理应用运行的方法的流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括一个或者更多个该特征。
随着电子设备的不断发展,电子设备所能实现的功能和承载的信息都越来越多,例如手机和平板电脑等电子设备已经可以实现网络游戏、商务办公、观看视频等功能。然而为了更好的管理以及使用电子设备,避免过度使用,当前也已有例如健康使用手机等管控功能,可以设置手机使用时长、应用使用限制及使用时长、手机模式等,用于管理设备和应用的运行。
示例性地,如图1所示,以电子设备是手机为例,在电子设备的设置界面上,包括有健康使用手机控件11,在用户点击该健康使用手机控件11的情况下,电子设备可以跳转至健康使用手机的设置界面。在健康使用手机的设置界面上,包括有电子设备的使用统计信息,例如电子设备当前已使用了多长时间以及各个应用的使用时间,还包括有各项设置控件。
对于各项设置控件,例如图1中所示,健康使用手机的设置界面上包括可用时长控件12,该控件可以用于设置屏幕每天使用的总时间。如果用户点击该可用时长控件12,电子设备可以跳转至图2所示的可用时长设置界面。在可用时长设置上,用户可以进行可用时长的设置,包括但不限于分别对工作日和休息日进行设置。示例性地,如果用户点击工作日控件21,则电子设备可以跳转至编辑可用时长的界面,在编辑可用时长的界面上用户可以对名称、重复方式、每日可用时长分别进行编辑,待编辑完成后点击完成控件22即可。如果用户不再需要在工作日设置可用时长,则可以在编辑可用时长的界面上选择删除控件23,即可以删除对工作日限制使用时长的管控规则。另外,用户还可以根据自己的需要在图2的可用时长设置界面上添加可用时长,即个性化设置限制使用时长的管控规则。
继续参见图1,健康使用手机的设置界面上还包括应用限额控件13,该控件可以用于设置限制应用的使用时间。如果用户点击该应用限额控件13,电子设备可以跳转至图3所示的应用限额设置界面。在应用限额设置界面上,用户可以分别对不同应用进行限额设置,如图3所示,用户可以任意点击一个应用图标,例如点击了地图应用图标31,则电子设备可以弹出对地图应用的限额设置框,在该限额设置框内,包括有不同限制方式的设置控件。示例性地,如果用户不需要对地图应用进行限额设置,则用户可以点击始终允许的开关控件32以设置为始终允许使用地图应用;如果用户需要禁止使用地图应用(即任何时刻都不能运行地图应用),则用户可以点击禁止使用的开关控件33以设置为禁止使用地图应用;如果用户需要对地图应用进行限额设置,则用户可以点击限时使用的开关控件34,并在下方的时间列表中设置限额时长,例如设置为1小时,即每天仅允许使用地图应用1小时。
在健康使用手机的设置界面上,除了上述的可用时长控件12和应用限额控件13之外,还可以包括例如停用时间控件、远程守护控件等,对于其功能本申请实施例暂不详述。
可以理解,如果用户在电子设备上进行了上述设置,例如设置每天使用电子设备的总时间为6小时,或者设置每天允许使用某个应用的时长为1小时,那么在达到设置的时间后,电子设备会弹出使用时间已用完,不允许再使用的提示界面。示例性地,在设置地图应用的限额时长为1小时的场景下,电子设备所显示的提示界面如图4所示,即在健康使用手机标题的提示下,显示“今日可用时长已用完,‘地图’应用不可使用”的内容。在图4的提示界面上,如果用户点击下方的“知道了”控件41,则电子设备会退出当前界面,返回桌面界面;如果用户确实还需要再使用地图应用,则可以点击延时使用控件42,在弹出的当前应用延时使用设置框中选择对应的延时规则。
其中,电子设备开启了健康使用手机功能后,电子设备中的健康使用手机应用(或模块)会记录电子设备或应用的运行时间,在运行时间达到设置的时长后,健康使用手机应用便会启动显示上述图4所示的提示界面。
在另一些场景中,在电子设备具有儿童模式的条件下,如果家长给孩子使用电子设备进行学习时,为避免孩子使用电子设备娱乐,则可以将电子设备设置为儿童模式,在此模式下无法运行例如游戏、视频等应用。
一般情况下,用户设置健康使用手机功能的初衷在于规范自律的使用手机,或者是引导儿童合理使用电子设备,那么这就需要电子设备能够准确的执行健康使用手机功能,以更好的管理应用运行。但是研究发现,在健康使用手机功能开启的情况下,如果有其他冲突的功能也开启,则可能导致健康使用手机功能失效,无法对原本应限制使用的应用进行限制。
可选地,其他冲突的功能包括但不限于屏幕固定功能。以屏幕固定功能为例,屏幕固定功能为Android系统的一项功能,如果电子设备开启了屏幕固定功能,并固定了某个应用的显示屏幕,则用户当前只能使用被固定的这个应用,不能使用其他应用,直至用户取消固定该应用的显示屏幕。
示例性地,如图5所示,电子设备开启屏幕固定功能的路径可以包括:在电子设备的设置界面上,除了包括有上述的健康使用手机控件之外,还可以包括安全控件51,在用户点击该安全控件51的情况下,电子设备可以跳转至安全设置界面。在安全设置界面上,用户可以对电子设备进行各项安全设置,例如应急预警通知、密码保险箱、支付保护中心等安全设置;除此之外,安全设置界面上还包括更多安全设置控件52,在用户点击更多安全设置控件52的情况下,电子设备可以跳转至更多安全设置界面。在更多安全设置界面上,用户可以对电子设备进行例如设备管理器、加密和凭据、安装外部来源应用等安全设置,以及还可以进行屏幕固定的设置。在用户点击屏幕固定控件53的情况下,电子设备可以跳转至屏幕固定设置界面,在屏幕固定设置界面包括有屏幕固定的开关控件54。如果用户点击了开关控件54即可以打开屏幕固定功能。可选地,为了进一步的安全性,在屏幕固定设置界面上还可以包括取消屏幕固定前要求验证锁屏密码的控件55,即用户在取消某个固定应用的显示屏幕时需要输入锁屏密码,以防止被恶意使用电子设备。
在用户点击开关控件54打开了屏幕固定功能的情况下,如果用户操作电子设备进入最近任务栏界面,例如从电子设备的显示屏底部向上滑动进入最近任务栏界面,最近任务栏界面中的应用列表上会显示有固定屏幕控件。例如图6所示,最近任务栏界面上的固定屏幕控件61显示在应用列表中的第一个应用底部,如果用户左右滑动应用列表,则固定屏幕控件61会跟随滑动操作显示在当前位于中间位置显示的应用底部。在用户点击了某个应用底部的固定屏幕控件61的情况下,电子设备可以切换显示出该应用的运行界面,并弹出屏幕已固定的提示信息。继续参见图6,假设用户点击了电子邮箱应用底部的固定屏幕控件61,则电子设备切换显示出电子邮箱应用的运行界面,并显示提示框62,以提示用户当前屏幕已固定。
其中,电子设备开启了屏幕固定功能并接收用户对应用A的屏幕固定操作后,电子设备中的活动管理服务(activity manager service,AMS)可以响应于该屏幕固定操作,使显示应用A的运行界面,并且之后AMS可以拦截用户所输入的切换显示界面等相关的操作,以保证当前屏幕处于固定状态。
通过研究发现,在电子设备同时开启了上述健康使用手机功能和屏幕固定功能的情况下,假设在健康使用手机功能中设置了使用应用B的限额时长为1小时,那么在运行应用B的过程中,到达1小时后电子设备会显示如上述图4所示的提示界面。然而,如果此时用户操作电子设备进入最近任务栏界面,并在最近任务栏界面中的应用B上点击固定屏幕控件,则应用B便可以继续运行使用,也即健康使用手机功能在此时失效,没有再对应用B进行管控。示例性地,如图7所示,假设应用B为视频应用,在限额时长达到时电子设备提示“今日可用时长已用完,‘视频’应用不可使用”的内容,此时用户操作电子设备进入最近任务栏界面,并点击视频应用底部的固定屏幕控件61,则电子设备可以继续运行视频应用,健康使用手机功能失效。究其原因,是因为AMS的运行优先级高于健康使用手机应用,如果两者同时运行的话,电子设备会优先响应AMS的运行需求,便造成了健康使用手机功能失效的情况。
有鉴于此,本申请实施例提供一种管理应用运行的方法,可以在开启健康使用手机等管控功能时缓存屏幕固定等功能的开启状态,并关闭屏幕固定等功能及功能入口,使用户无法再开启屏幕固定等功能,或者在对某个应用进行屏幕固定时判断系统是否允许进行此功能,在不允许进行此功能时不能进行屏幕固定,以解决管控功能与屏幕固定等功能之间的冲突,使得管控功能更好的实现管理与限制作用,提高用户体验。
本申请实施例提供的管理应用运行的方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等可以安装应用程序(application,APP)的电子设备上,本申请实施例对电子设备的具体类型不作任何限制。
示例性的,图8是本申请实施例提供的一例电子设备100的结构示意图。以电子设备100是手机为例,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图9是本申请实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。应用程序层可以包括一系列应用程序包,例如Android应用程序包(Android application package,APK)。
如图9所示,应用程序包可以包括相机,图库,通话,地图,WLAN,蓝牙,视频,短信息、设置等应用程序,还可以包括系统用户界面(SystemUI)和系统管控模块,示例性地,系统管控模块可以为健康使用手机模块。
其中,设置APK(或设置模块)可以供用户对不同功能进行设置,例如上述的对健康使用手机功能和屏幕固定功能的设置。系统管控模块用于对电子设备或已开启管控功能的应用进行使用管理,例如管理应用的运行时长等。SystemUI是系统为用户提供的系统级别的信息显示与交互的一套UI组件,可以实现锁屏、状态栏、底部导航栏、最近任务栏界面等内容的显示与交互;例如,上述图6中用户从最近任务栏界面选择应用进行屏幕固定的交互操作即是通过SystemUI来实现。
在本申请实施例中,设置模块还可以向数据库记录不同功能的开启或关闭状态信息,系统管控模块也可以缓存不同功能的开启或关闭状态信息,以及根据不同需求发送不同广播。设置模块还可以接收到不同广播以执行不同广播所指示的操作。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图9所示,应用程序框架层可以包括AMS、窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
其中,AMS是Android操作系统中的一个核心组件,它是Android应用程序的管理器,负责管理应用程序的生命周期、任务栈、进程和活动之间的切换等。AMS在Android系统中起着至关重要的作用,确保应用程序能够正确运行并与用户进行交互。任务栈管理是指在Android系统中对应用程序的活动(Activity)进行组织和管理的机制,每个任务栈对应一个应用程序或一组相关的活动。当用户启动应用程序的一个新Activity时,系统会将该Activity所属的任务添加到一个任务栈中。因此,一个任务栈中存储有多个任务,每个任务可以对应有一个标识,例如任务ID(taskid),每个任务也对应有应用程序的信息。
在本申请实施例中,在SystemUI接收到用户输入的触控操作后,还可以向AMS发送消息,指示AMS通过接口向系统管控模块请求查询是否允许响应触控操作等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。电话管理器用于提供电子设备100的通信功能。资源管理器为应用程序提供各种资源。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
为了便于理解,本申请以下实施例将以具有图8和图9所示结构的电子设备为例,结合附图和应用场景,对本申请实施例提供的管理应用运行的方法进行具体阐述。
以上述健康使用手机功能和屏幕固定功能为例,在健康使用手机功能开启时,电子设备可能存在两种情况,第一种是屏幕固定功能已开启,第二种是屏幕固定功能未开启。在第一种情况下,屏幕固定功能已开启的话,如果要避免健康使用手机功能和屏幕固定功能相冲突,本申请实施例提供两种解决方法,一种是电子设备此时主动将屏幕固定功能关闭(参见下述图10所示的实施例),另一种是用户触发某个应用执行屏幕固定时,电子设备来判断是否允许该应用进行屏幕固定(参见下述图13和图16所示的实施例)。在第二种情况下,屏幕固定功能未开启的话,则电子设备可以主动将屏幕固定功能的设置入口关闭(参见下述图10所示的实施例),使用户不能再开启屏幕固定功能。下面对两种情况进行详细描述。
图10是本申请实施例提供的一例管理应用运行的方法的时序交互示意图,应用于上述图9所示的软件结构,描述的是在开启管控功能时对屏幕固定等功能进行关闭的场景,即两个功能不能同时开启,该方法包括:
S11,系统管控模块接收第一功能的开启操作(第一操作)时,判断第二功能是否开启,若第二功能开启,则执行S12,若第二功能未开启,则执行S14。
其中,第一功能的开启操作(可以简称为第一操作)可以为上述图2或图3中开启健康使用手机功能的操作,也可以为开启或切换至儿童模式的操作,还可以为同时开启健康使用手机功能以及开启或切换至儿童模式的操作,即开启了电子设备的管控功能(可以简称为第一功能)。可选地,第一功能还可以是移动设备管理(MDM)功能、锁机管控功能等。
系统管控模块可以接收到用户输入的第一操作,并在接收到第一操作时判断第二功能是否开启。可选地,第二功能可以为屏幕固定功能,第二功能对应的运行优先级大于第一功能对应的运行优先级。
可选地,系统管控模块可以获取第二功能的状态信息,例如从数据库中获取第二功能的状态信息,进而根据第二功能的状态信息判断第二功能是否开启。示例性地,数据库中lock_to_app_enabled字段的值可以用于表征第二功能的状态信息,系统管控功能可以通过调用函数Settings.System.getInt(context.getContentResolver(),“lock_to_app_enabled”)来获取lock_to_app_enabled字段的值。示例性地,如果lock_to_app_enabled字段的值为1,则表示第二功能开启,如果lock_to_app_enabled字段的值为0,则表示第二功能关闭。
另外,由上述图5所示的开启屏幕固定功能的过程可知,用户可以通过设置路径来开启或关闭屏幕固定功能(即第二功能),那么设置模块(或设置APK)可以在用户开启第二功能之后将第二功能的开启状态信息写入数据库,或者在用户关闭第二功能之后将第二功能的关闭状态信息写入数据库。
S12,系统管控模块缓存第二功能的开启状态信息,以及发送第一广播。
其中,如果第二功能已开启,则系统管控模块可以缓存第二功能的开启状态信息。可选地,系统管控模块可以向内存申请一块缓存(buffer)来存储第二功能的开启状态信息,或者可以新建一个数据库来缓存第二功能的开启状态信息。
同时,系统管控模块还需要发送第一广播(sendBroadcast),第一广播用于指示关闭第二功能以及关闭第二功能的设置入口。可选地,第一广播可以携带第一指令,第一指令用于指示关闭第二功能以及关闭第二功能的设置入口。示例性地,第一广播可以为LOCK_TO_APP_ALL_DISABLE类型的广播。
S13,设置模块接收到第一广播,关闭第二功能以及关闭第二功能的设置入口。
可以理解,如果设置模块要执行第一广播对应的指令,那么设置模块需要具备接收(或监听)第一广播的能力,则设置模块可以提前注册广播接收器,示例性地,可以注册与屏幕固定功能相关广播的接收器,例如ScreenLockReceiver。
因此,设置模块可以接收到上述系统管控模块发送的第一广播,并解析第一广播以执行相应的指令。因第一广播用于指示关闭第二功能以及关闭第二功能的设置入口,则设置模块可以执行关闭第二功能以及关闭第二功能的设置入口。示例性地,设置模块具备不同的广播处理逻辑,如果接收到LOCK_TO_APP_ALL_DISABLE类型的广播,则执行关闭第二功能以及关闭第二功能的设置入口。
以第二功能为屏幕固定功能为例,由上述图6可知,在开启屏幕固定功能的情况下,会在最近任务栏界面上显示固定屏幕控件61,那么设置模块关闭了屏幕固定功能之后,电子设备在最近任务栏界面上不再显示固定屏幕控件61。示例性地,设置模块关闭了屏幕固定功能后的最近任务栏界面的显示效果如图11所示,即不显示固定屏幕控件,那么用户便不能再操作屏幕固定功能,由此避免了第二功能与上述第一操作对应的第一功能之间的冲突。
再由上述图5可知,屏幕固定功能的设置入口包括开关控件54,为避免用户再触发开启屏幕固定功能,则设置模块还可以关闭屏幕固定功能的设置入口。可选地,如果要关闭屏幕固定功能的设置入口,则设置模块可以将开关控件54设置为不可操作的状态,或者隐藏显示该开关控件54。示例性地,如图12中的(a)所示,其为将开关控件54设置为不可操作的状态的示意图,即将开关控件54置为灰色不可操作;如图12中的(b)所示,其为隐藏显示开关控件54的示意图,即不显示该开关控件54。由此用户不能再开启屏幕固定功能,进一步避免了第二功能与上述第一操作对应的第一功能之间的冲突。
还可以理解,为避免其他模块(或APK)也接收到第一广播而滥用权限的问题,上述系统管控模块发送第一广播时还可以为该广播设置权限,使仅由设置模块接收并响应第一广播。示例性地,系统管控模块可以通过context.sendBroadcast函数设置第一广播的权限。
在另一些实施例中,上述第一广播也可以仅用于指示关闭第二功能,示例性地,第一广播可以为LOCK_TO_APP_DISABLE类型的广播。那么设置模块接收到第一广播后仅执行关闭第二功能,即执行针对LOCK_TO_APP_DISABLE类型的广播处理逻辑。
S14,系统管控模块发送第二广播。
其中,如果第二功能未开启,则系统管控模块可以发送第二广播(sendBroadcast),第二广播用于指示关闭第二功能的设置入口。可选地,第二广播可以携带第二指令,第二指令用于指示关闭第二功能的设置入口。也即是说,在第二功能没有开启的情况下,为避免用户再去开启第二功能,系统管控模块主动去指示关闭第二功能的设置入口,使用户不能再开启屏幕固定功能。示例性地,第二广播可以为LOCK_TO_APP_SET_DISABLE类型的广播。
可选地,如果第二功能未开启,系统管控模块还可以缓存第二功能的关闭状态信息。
S15,设置模块接收到第二广播,关闭第二功能的设置入口。
设置模块可以接收到上述系统管控模块发送的第二广播,并解析第二广播以执行相应的指令。因第二广播用于指示关闭第二功能的设置入口,则设置模块可以执行关闭第二功能的设置入口。示例性地,设置模块具备不同的广播处理逻辑,如果接收到LOCK_TO_APP_SET_DISABLE类型的广播,则执行关闭第二功能的设置入口。以第二功能为屏幕固定功能为例,设置模块关闭第二功能的设置入口的示意图参见上述图12,在此不再赘述。
S16,系统管控模块接收到第一功能的关闭操作(第二操作)时,判断所缓存的第二功能的状态信息是否为开启状态信息,若是开启状态信息,则执行S17,若不是开启状态信息,则执行S19。
其中,第一功能的关闭操作(可以简称为第二操作)可以为关闭健康使用手机功能的操作(例如上述图3中将应用设置为始终允许使用),也可以为退出儿童模式的操作,还可以为同时关闭健康使用手机功能以及退出儿童模式的操作,即关闭了电子设备的管控功能(第一功能)。
系统管控模块可以接收到用户输入的第二操作,并在接收到第二操作时判断第二功能之前是否为开启状态,可以理解,如果第二功能之前为开启状态则需要重启第二功能,以保持原有的运行状态。可选地,系统管控模块可以基于所缓存第二功能的状态信息来判断第二功能之前是否为开启状态,以进而判断是否需要重启第二功能。由于上述在第二功能开启的情况下系统管控模块缓存了第二功能的开启状态信息,因此如果当前缓存的是第二功能的开启状态信息则执行下述S17的步骤。
S17,系统管控模块发送第三广播。
其中,在所缓存的第二功能的状态信息是开启状态信息时,因上述S13中设置模块已将第二功能和第二功能的设置入口关闭,则系统管控模块可以发送第三广播(sendBroadcast),第三广播用于指示开启第二功能以及开启第二功能的设置入口。可选地,第三广播可以携带第三指令,第三指令用于指示开启第二功能以及开启第二功能的设置入口。示例性地,第三广播可以为LOCK_TO_APP_ALL_ENABLE类型的广播。
可选地,在系统管控模块发送了第三广播之后,还可以清除所缓存的第二功能的状态信息的记录。
S18,设置模块接收到第三广播,开启第二功能以及开启第二功能的设置入口。
设置模块可以接收到上述系统管控模块发送的第三广播,并解析第三广播以执行相应的指令。因第三广播用于指示开启第二功能以及开启第二功能的设置入口,则设置模块可以执行开启第二功能以及开启第二功能的设置入口。示例性地,设置模块如果接收到LOCK_TO_APP_ALL_ENABLE类型的广播,则执行开启第二功能以及开启第二功能的设置入口。
可以理解,在设置模块开启了第二功能以及开启了第二功能的设置入口之后,电子设备的界面可以恢复为上述图5和图6所示的界面。
在另一些实施例中,在上述第一广播仅用于指示关闭第二功能的情况下,第三广播也可以仅用于指示开启第二功能,那么设置模块接收到第三广播后仅执行开启第二功能。示例性地,第三广播可以为LOCK_TO_APP_ENABLE类型的广播,相应的设置模块仅执行针对LOCK_TO_APP_ENABLE类型的广播处理逻辑。
S19,系统管控模块发送第四广播。
其中,在所缓存的第二功能的状态信息不是开启状态信息时,因上述S15中设置模块已将第二功能的设置入口关闭,则系统管控模块可以发送第四广播(sendBroadcast),第四广播用于指示开启第二功能的设置入口。可选地,第四广播可以携带第四指令,第四指令用于指示开启第二功能的设置入口。示例性地,第四广播可以为LOCK_TO_APP_SET_ENABLE类型的广播。
S20,设置模块接收到第四广播,开启第二功能的设置入口。
设置模块可以接收到上述系统管控模块发送的第四广播,并解析第四广播以执行相应的指令。因第四广播用于指示开启第二功能的设置入口,则设置模块可以执行开启第二功能的设置入口。示例性地,如果设置模块接收到LOCK_TO_APP_SET_ENABLE类型的广播,则执行开启第二功能的设置入口。
上述管理应用运行的方法,在电子设备开启对应用进行管控的功能时,可以判断是否有冲突功能已开启,如果有冲突功能已开启,则将此冲突功能和设置入口进行关闭,以避免两者之间的运行冲突,保证管控功能更好的实现管理与限制作用,以及在关闭对应用进行管控的功能时,自动恢复冲突功能的正常运行。
图13是本申请实施例提供的另一例管理应用运行的方法的时序交互示意图,应用于上述图9所示的软件结构,描述的是管控功能和屏幕固定功能同时开启时,如果触发对应用进行屏幕固定,则确定是否允许屏幕固定的场景,该方法包括:
S21,SystemUI接收到用户的第三操作时,向AMS发送第一信息。
其中,第三操作可以为触发第一应用执行第二功能的操作,例如可以为上述图6中在最近任务栏界面对固定屏幕控件61的触控操作,即触发对第一应用进行屏幕固定。此时,SystemUI可以向AMS发送第一信息,以指示AMS判断是否允许对第一应用进行屏幕固定。
可选地,第一信息中可以携带任务标识,例如任务ID(taskid),SystemUI可以调用AMS接口向AMS发送第一信息。示例性地,AMS接口可以为startSystemLockTaskMode(taskid)。
S22,AMS根据第一信息确定第一应用标识。
可以理解,因每个任务对应有应用程序的信息,那么,AMS可以根据第一信息中携带的任务标识确定对应的第一应用标识。可选地,任务标识和应用标识可以关联存储于数据库中,AMS可以基于第一信息中携带的任务标识从数据库中查找对应的第一应用标识。可选地,第一应用标识可以为应用包名(packageName),AMS还可以根据任务标识获取对应的任务task,以及基于getpackageName()函数获取应用包名。
S23,AMS基于第一应用标识向系统管控模块请求查询第一结果。
其中,第一结果用于表征是否允许第一应用执行第二功能,AMS向系统管控模块请求查询第一结果时,可以将第一应用标识发送给系统管控模块,由系统管控模块确定是否允许第一应用执行第二功能,例如是否允许第一应用进行屏幕固定。
可选地,在第一应用标识为应用包名的情况下,AMS可以通过allowStartScreenPinning(int pid,String packageName)接口向系统管控模块查询第一结果。
S24,系统管控模块基于第一应用标识确定第一结果。
因本申请实施例目的是要保证管控功能更好的实现管理与限制作用,那么可以理解,如果第一应用当前处于被限制使用的状态,例如第一应用的使用时长已达到限额时长,不允许再继续运行使用,则应该不允许其执行第二功能。因此,如果要确定是否允许第一应用执行第二功能,则系统管控模块可以根据当前电子设备的运行模式和/或第一应用的限制使用状态来判断。
可选地,如图14所示,系统管控模块基于第一应用标识确定第一结果的过程可以包括:
S241,判断当前电子设备是否为第一模式,若是第一模式则执行S242,若不是第一模式则执行S245。
其中,第一模式可以为家长模式,电子设备中的应用都有权限运行,即为正常的运行模式。可选地,用户设置电子设备的运行模式后,电子设备可以将运行模式的信息进行保存,那么系统管控模块可以查询当前电子设备的运行模式,以确定是否为第一模式。
S242,根据第一应用标识判断第一应用是否处于限制使用状态,若处于限制使用状态则执行S243,若没有处于限制使用状态则执行S244。
S243,确定第一值为第一结果。
S244,确定第二值为第一结果。
其中,由上述图4所示的场景可知,如果电子设备运行的总时长达到了设置的时长,或者某个应用运行的时长达到了设置的时长,电子设备会进行限制使用,那么对应的应用会进入限制使用状态。可以理解,如果电子设备运行的总时长达到了设置的时长,则电子设备中的全部应用(除了设置始终允许使用的应用)都会进入限制使用状态,如果某个应用运行的时长达到了设置的时长,则该应用会进入限制使用状态。
可选地,进入限制使用状态的应用可以被存储至一个数据库或者列表中,数据库或者列表中存储有对应的应用标识。系统管控模块可以基于第一应用标识在数据库或者列表中查询,以确定第一应用是否处于限制使用状态。
如果第一应用处于限制使用状态,则系统管控模块可以将第一值确定为第一结果,例如第一值为1,在限制使用状态时不允许第一应用执行第二功能。如果第一应用没有处于限制使用状态,则系统管控模块可以将第二值确定为第一结果,例如第二值为-1,在不是限制使用状态时可以允许第一应用执行第二功能。
S245,判断当前电子设备是否为第二模式,若是第二模式则执行S246,若不是第二模式则执行S247。
S246,确定第三值为第一结果。
S247,确定第四值为第一结果。
其中,第二模式可以为儿童模式,电子设备中的部分应用没有权限运行,即为限制的运行模式。如果电子设备为第二模式,则系统管控模块可以将第三值确定为第一结果,例如第三值为2,在第二模式时不允许第一应用执行第二功能。如果电子设备不是第二模式,则系统管控模块可以将第四值确定为第一结果,例如第四值为3,可选地,电子设备不是第二模式时,可以是陌生人访客模式等其他模式,此时也可以不允许第一应用执行第二功能,或者根据实际场景进行设置。
可以理解,上述的第一值、第二值、第三值和第四值的表达方式不局限于数值方式,也可以是其他数据类型,例如第一值为restricted_mode、第三值为child_mode等,本申请实施例对此不做限制。
S25,系统管控模块向AMS返回第一结果。
S26,AMS向SystemUI发送第一结果。
即,系统管控模块可以将第一结果经由AMS发送给SystemUI,以使SystemUI根据不同结果进行不同的处理逻辑。
S27,SystemUI根据第一结果执行对应的处理操作。
因第一结果表征是否允许第一应用执行第二功能,那么当允许第一应用执行第二功能时,SystemUI可以显示第一应用执行第二功能的界面,例如第二功能为屏幕固定功能时,SystemUI显示出如上述图6所示的屏幕已固定的界面。当不允许第一应用执行第二功能时,SystemUI可以返回桌面并显示提示界面,以提示用户当前不允许执行第二功能。示例性地,在第二功能为屏幕固定功能、且第一结果为第一值时,SystemUI显示如图15所示的提示界面,该提示界面上显示“当前应用处于限制使用中,暂不允许启用屏幕固定功能”的信息;或者在第一结果为第三值时,显示“儿童模式下不允许启用屏幕固定功能”的信息。
上述管理应用运行的方法,在触发对第一应用执行第二功能时,电子设备可以判断当前是否允许第一应用执行第二功能,如果不允许第一应用执行第二功能则对用户进行提示,以避免不同功能之间的运行冲突,保证管控功能更好的实现管理与限制作用。
图16是本申请实施例提供的又一例管理应用运行的方法的时序交互示意图,应用于上述图9所示的软件结构,描述的也是管控功能和屏幕固定功能同时开启时,如果触发对应用进行屏幕固定,则确定是否允许屏幕固定的场景,该方法包括:
S31,SystemUI接收到用户的第三操作时,向AMS发送第一信息。
其中,第三操作可以为触发第一应用执行第二功能的操作,例如可以为上述图6中在最近任务栏界面对固定屏幕控件61的触控操作,即触发对第一应用进行屏幕固定。此时,SystemUI可以向AMS发送第一信息,以指示AMS判断是否允许对第一应用进行屏幕固定。
S32,AMS根据第一信息确定第一应用标识。
可以理解,因每个任务对应有应用程序的信息,那么,AMS可以根据第一信息中携带的任务标识确定对应的第一应用标识。可选地,任务标识和应用标识可以关联存储于数据库中,AMS可以基于第一信息中携带的任务标识从数据库中查找对应的第一应用标识。可选地,第一应用标识可以为应用包名(packageName),AMS还可以根据任务标识获取对应的任务task,以及基于getpackageName()函数获取应用包名。
S33,AMS基于第一应用标识从数据库中查询到第二结果。
其中,数据库中可以存储有进入限制使用状态的应用的标识,示例性地,如果第一应用标识在数据库中存在,则第二结果可以为Y,如果第一应用标识没有在数据库中存在,则第二结果可以为N。
可选地,数据库中所存储的内容可以由系统管控模块写入,如果电子设备运行的总时长达到了设置的时长,或者某个应用运行的时长达到了设置的时长,电子设备会进行限制使用,那么对应的应用会进入限制使用状态,系统管控模块可以将对应的应用标识写入数据库中,以供AMS进行查询。可选地,AMS可以通过监听的方式从数据库中获取第二结果,还可以调用provider查询第二结果,这里的provider可以作为应用程序之间共享数据的途径,将存储的数据以数据表的形式提供给访问者等。
S34,AMS根据第二结果判断第一应用是否处于限制使用状态,若处于限制使用状态则执行S35,若没有处于限制使用状态则执行S37。
可以理解,如果第二结果表征第一应用标识在上述数据库中存在,则说明第一应用处于限制使用状态,如果第二结果表征第一应用标识没有在上述数据库中存在,则说明第一应用没有处于限制使用状态。
S35,AMS向SystemUI发送第二消息。
在第一应用处于限制使用状态的情况下,不允许第一应用执行第二功能,则AMS向SystemUI发送的第二消息用于指示SystemUI进行提示,例如提示“当前应用处于限制使用中,暂不允许启用屏幕固定功能”的信息。
S36,SystemUI根据第二消息显示第一提示界面。
示例性地,第一提示界面可以参见上述图15,以提示用户当前不允许执行第二功能。
S37,AMS判断当前电子设备是否为第二模式,若是第二模式则执行S38,若不是第二模式则执行S40。
也即是说,在第一应用没有处于限制使用状态的情况下,AMS进一步判断当前电子设备是否处于第二模式(如儿童模式),以更准确的对第一应用进行管控。
S38,AMS向SystemUI发送第三消息。
S39,SystemUI根据第三消息显示第二提示界面。
在电子设备为第二模式的情况下,不允许第一应用执行第二功能,则AMS向SystemUI发送的第三消息用于指示SystemUI进行提示,例如提示“儿童模式下不允许启用屏幕固定功能”的信息。
S40,AMS对第一应用启动第二功能。
即在第一应用没有处于限制使用状态、且电子设备也不是第二模式的情况下,应该允许第一应用执行第二功能,例如可以对第一应用进行屏幕固定,则AMS可以对第一应用启动第二功能。
上述管理应用运行的方法,在触发对第一应用执行第二功能时,电子设备可以判断当前是否允许第一应用执行第二功能,如果不允许第一应用执行第二功能则对用户进行提示,以避免不同功能之间的运行冲突,保证管控功能更好的实现管理与限制作用。
由上述描述可知,相关技术中健康使用手机功能和屏幕固定功能存在冲突的原因是AMS的运行优先级高于健康使用手机应用,如果两者同时运行的话,电子设备会优先响应AMS的运行需求,便造成了健康使用手机功能失效的情况,那么在另一些实施例中,如果用户同时在电子设备上开启了健康使用手机功能和屏幕固定功能,电子设备还可以临时提高健康使用手机应用的运行优先级,以保证优先执行健康使用手机功能,使管控功能更好的实现管理与限制作用。
上文详细介绍了本申请实施例提供的管理应用运行的方法的示例。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分为各个功能模块,例如检测单元、处理单元、显示单元等,也可以将两个或两个以上的功能集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本实施例提供的电子设备,用于执行上述管理应用运行的方法,因此可以达到与上述实现方法相同的效果。
在采用集成的单元的情况下,电子设备还可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对电子设备的动作进行控制管理。存储模块可以用于支持电子设备执行存储程序代码和数据等。通信模块,可以用于支持电子设备与其他设备的通信。
其中,处理模块可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processor,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他电子设备交互的设备。
在一个实施例中,当处理模块为处理器,存储模块为存储器时,本实施例所涉及的电子设备可以为具有图8所示结构的设备。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储了计算机程序,当计算机程序被处理器执行时,使得处理器执行上述任一实施例的管理应用运行的方法。存储介质可以包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的管理应用运行的方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的管理应用运行的方法。
其中,本实施例提供的电子设备、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (18)

1.一种管理应用运行的方法,所述方法由电子设备执行,其特征在于,所述方法包括:
在所述电子设备的第一功能开启时,确定第二功能是否已开启,其中,所述第一功能用于管理所述电子设备中的应用运行,所述第二功能对应的运行优先级大于所述第一功能对应的运行优先级;
若所述第二功能已开启,则关闭所述第二功能,或者,在接收到用户触发所述电子设备中的第一应用执行所述第二功能的操作,但所述电子设备确定不允许所述第一应用执行所述第二功能时,不响应执行所述第二功能;
若所述第二功能未开启,则关闭所述电子设备中所述第二功能的设置入口。
2.根据权利要求1所述的方法,其特征在于,在所述关闭所述第二功能之前,所述方法还包括:
缓存所述第二功能的开启状态信息。
3.根据权利要求2所述的方法,其特征在于,在所述关闭所述第二功能的情况下,所述方法还包括:
关闭所述电子设备中所述第二功能的设置入口。
4.根据权利要求1至3中任一项所述的方法,其特征在于,在所述关闭所述第二功能之后,若接收到对所述第一功能的关闭操作且缓存的所述第二功能的状态信息为开启状态信息,则所述方法还包括:
开启所述第二功能,以及开启所述电子设备中所述第二功能的设置入口。
5.根据权利要求1至4中任一项所述的方法,其特征在于,若所述第二功能已开启,在所述电子设备的第一界面上显示有第一控件,所述第一控件为触发执行所述第二功能的控件,则在所述关闭所述第二功能的情况下,所述方法还包括:
在所述第一界面上取消显示所述第一控件。
6.根据权利要求1所述的方法,其特征在于,所述接收到用户触发所述电子设备中的第一应用执行所述第二功能的操作,包括:
在第一界面上接收到所述用户对第一控件的触发操作,所述第一界面上包括所述第一应用的任务界面,所述第一控件位于所述第一应用的任务界面上。
7.根据权利要求6所述的方法,其特征在于,所述第一界面为最近任务栏界面。
8.根据权利要求6或7所述的方法,其特征在于,所述电子设备确定不允许所述第一应用执行所述第二功能,包括:
根据所述电子设备的运行模式和/或所述第一应用的使用状态,确定不允许所述第一应用执行所述第二功能。
9.根据权利要求8所述的方法,其特征在于,所述根据所述电子设备的运行模式和/或所述第一应用的使用状态,确定不允许所述第一应用执行所述第二功能,包括:
若所述电子设备的运行模式为第一模式,且所述第一应用的使用状态为限制使用状态,则确定不允许所述第一应用执行所述第二功能,所述第一模式表征所述电子设备中的应用都有权限运行,所述限制使用状态表征所述第一应用因运行时长达到了限额时长而不允许使用的状态。
10.根据权利要求8所述的方法,其特征在于,所述根据所述电子设备的运行模式和/或所述第一应用的使用状态,确定不允许所述第一应用执行所述第二功能,包括:
若所述电子设备的运行状态为第二模式,则确定不允许所述第一应用执行所述第二功能,所述第二模式表征所述电子设备中的部分应用没有权限运行。
11.根据权利要求6或7所述的方法,其特征在于,所述电子设备确定不允许所述第一应用执行所述第二功能,包括:
若所述第一应用的应用标识存储于第一存储空间,则确定不允许所述第一应用执行所述第二功能,所述第一存储空间存储有因运行时长达到了限额时长而不允许使用的应用的标识。
12.根据权利要求6或7所述的方法,其特征在于,所述电子设备确定不允许所述第一应用执行所述第二功能,包括:
若所述第一应用的应用标识未存储于第一存储空间,但所述电子设备的运行状态为第二模式,则确定不允许所述第一应用执行所述第二功能。
13.根据权利要求6至12中任一项所述的方法,其特征在于,在所述不响应执行所述第二功能的情况下,所述方法还包括:
显示不允许执行所述第二功能的提示信息。
14.根据权利要求1至13中任一项所述的方法,其特征在于,在所述关闭所述电子设备中所述第二功能的设置入口的情况下,所述方法还包括:
取消显示对所述第二功能进行设置的界面。
15.根据权利要求1至14中任一项所述的方法,其特征在于,所述第一功能为健康使用手机功能。
16.根据权利要求1至15中任一项所述的方法,其特征在于,所述第二功能为屏幕固定功能。
17.一种电子设备,其特征在于,包括:
一个或多个处理器;
一个或多个存储器;
所述存储器存储有一个或多个程序,当所述一个或多个程序被所述处理器执行时,使得所述电子设备执行如权利要求1至16中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储了计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至16中任一项所述的方法。
CN202311316019.2A 2023-10-11 2023-10-11 管理应用运行的方法和电子设备 Active CN117555658B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311316019.2A CN117555658B (zh) 2023-10-11 2023-10-11 管理应用运行的方法和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311316019.2A CN117555658B (zh) 2023-10-11 2023-10-11 管理应用运行的方法和电子设备

Publications (2)

Publication Number Publication Date
CN117555658A true CN117555658A (zh) 2024-02-13
CN117555658B CN117555658B (zh) 2024-10-11

Family

ID=89813603

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311316019.2A Active CN117555658B (zh) 2023-10-11 2023-10-11 管理应用运行的方法和电子设备

Country Status (1)

Country Link
CN (1) CN117555658B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534932A (zh) * 2016-04-15 2018-01-02 华为技术有限公司 一种功能状态控制的方法及相关设备
CN111026456A (zh) * 2019-11-29 2020-04-17 惠州Tcl移动通信有限公司 应用管理方法、装置、存储介质及电子设备
CN111638971A (zh) * 2020-04-21 2020-09-08 华为终端有限公司 应用通知管理方法和电子设备
CN111752632A (zh) * 2020-06-01 2020-10-09 Oppo(重庆)智能科技有限公司 移动终端的控制方法、装置、移动终端以及存储介质
CN112748972A (zh) * 2019-10-31 2021-05-04 华为技术有限公司 多任务界面管理方法及电子设备
CN115412999A (zh) * 2021-05-29 2022-11-29 华为技术有限公司 一种设备唤醒方法及电子设备
CN115567630A (zh) * 2022-01-06 2023-01-03 荣耀终端有限公司 一种电子设备的管理方法、电子设备及可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534932A (zh) * 2016-04-15 2018-01-02 华为技术有限公司 一种功能状态控制的方法及相关设备
CN112748972A (zh) * 2019-10-31 2021-05-04 华为技术有限公司 多任务界面管理方法及电子设备
CN111026456A (zh) * 2019-11-29 2020-04-17 惠州Tcl移动通信有限公司 应用管理方法、装置、存储介质及电子设备
CN111638971A (zh) * 2020-04-21 2020-09-08 华为终端有限公司 应用通知管理方法和电子设备
CN111752632A (zh) * 2020-06-01 2020-10-09 Oppo(重庆)智能科技有限公司 移动终端的控制方法、装置、移动终端以及存储介质
CN115412999A (zh) * 2021-05-29 2022-11-29 华为技术有限公司 一种设备唤醒方法及电子设备
CN115567630A (zh) * 2022-01-06 2023-01-03 荣耀终端有限公司 一种电子设备的管理方法、电子设备及可读存储介质
WO2023131070A1 (zh) * 2022-01-06 2023-07-13 荣耀终端有限公司 一种电子设备的管理方法、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN117555658B (zh) 2024-10-11

Similar Documents

Publication Publication Date Title
CN110569130B (zh) 一种跨进程通信方法、装置及设备
US20120157165A1 (en) Mobile terminal and method of controlling a mode switching therein
CN112528288A (zh) 可信应用的运行方法、信息处理和内存分配方法及装置
CN114489917B (zh) 应用程序异常退出的处理方法、电子设备和可读存储介质
US20180196584A1 (en) Execution of multiple applications on a device
CN113032766A (zh) 应用权限管理的方法和装置
CN108090361B (zh) 安全策略更新方法及装置
CN112732434A (zh) 一种应用管理方法及装置
CN116521180A (zh) 一种编译优化方法、电子设备和存储介质
CN113435173B (zh) 文本生成方法、相关装置及系统
WO2024139864A1 (zh) 程序存储位置的调整方法及相关装置
WO2020062192A1 (zh) 一种操作控制方法及电子设备
CN113792328A (zh) 权限管理方法、用户界面及电子设备
CN117555658B (zh) 管理应用运行的方法和电子设备
CN110602689B (zh) 一种设备安全操作的方法和装置
CN116257466A (zh) 内存访问方法、计算节点及相关单元与存储介质
CN113468606A (zh) 一种应用程序的访问方法及电子设备
CN114490442B (zh) 文件片段调整方法及电子设备
CN115017473B (zh) 授权方法及电子设备
CN113792327B (zh) 权限管理方法、用户界面及电子设备
CN115357273B (zh) 系统升级的提醒方法和电子设备
CN111459462A (zh) 分散式重锁降级
CN117130698B (zh) 一种菜单显示方法及电子设备
CN117857646B (zh) 数据网络共享方法、电子设备及存储介质
WO2023185881A1 (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
GR01 Patent grant
GR01 Patent grant