CN116991302B - 应用与手势导航栏兼容运行方法、图形界面及相关装置 - Google Patents
应用与手势导航栏兼容运行方法、图形界面及相关装置 Download PDFInfo
- Publication number
- CN116991302B CN116991302B CN202311230545.7A CN202311230545A CN116991302B CN 116991302 B CN116991302 B CN 116991302B CN 202311230545 A CN202311230545 A CN 202311230545A CN 116991302 B CN116991302 B CN 116991302B
- Authority
- CN
- China
- Prior art keywords
- application
- navigation bar
- height
- gesture navigation
- electronic device
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000015654 memory Effects 0.000 claims description 50
- 238000004590 computer program Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 abstract description 14
- 238000007726 management method Methods 0.000 description 94
- 238000012545 processing Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 18
- 238000010295 mobile communication Methods 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 10
- 230000005236 sound signal Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 210000004027 cell Anatomy 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013529 biological neural network Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种应用与手势导航栏兼容运行方法、图形界面及相关装置。该方法包括:在电子设备的系统用户界面(System UI)中将手势导航栏高度信息配置为略大于0的数值,电子设备的应用接收触发操作,该应用获取到略大于0的手势导航栏高度信息后成功执行触发操作对应的业务。此外,该应用还向窗口管理模块获取避让信息,窗口管理模块基于从System UI中获取的手势导航栏高度信息,将得到的避让信息从非0修改为0后返回至应用,电子设备在成功执行上述业务的过程中不显示白条。
Description
技术领域
本申请涉及终端领域,尤其涉及一种应用与手势导航栏兼容运行方法、图形界面及相关装置。
背景技术
目前,电子设备中采用的导航栏为三键导航和带提示条的手势导航栏,这两类导航都需要占用屏幕显示空间。为了提高电子设备的屏幕使用效率,一种不占用屏幕显示空间的手势导航栏应运而生。那么在采用不占用屏幕显示空间的手势导航栏的情况下,如何保证应用程序能够适配该类手势导航栏,即,如何保证应用与手势导航栏兼容运行,则是亟待解决的问题。
发明内容
本申请提供一种应用与手势导航栏兼容运行方法、图形界面及相关装置,可以在采用不占用屏幕显示空间的手势导航栏的情况下,保证应用与手势导航栏兼容运行。
第一方面,提供了一种应用与手势导航栏兼容运行方法,该方法应用于包括第一应用的电子设备,该方法包括:显示手势导航栏,该手势导航栏不包括提示信息,该提示信息用于提示用户通过手势实现导航;该手势导航栏的高度为第一高度,该第一高度大于0;接收到对该第一应用的第一操作;通过该第一应用获取到该手势导航栏的高度,该第一应用执行该第一操作对应的任务。其中,手势导航栏不包括提示信息可以包括两种情况:情况1,手势导航栏不包括提示线/提示条,或者其他提示信息;情况2,手势导航栏可以包括提示线/提示条,但由于手势导航栏高度极小,在电子设备的显示屏中几乎看不到,无法达到提示用户的效果,因此也属于手势导航栏不包括提示信息的情形。
实施第一方面提供的方法,可以在采用几乎不占用屏幕显示空间的手势导航栏的情况下,保证应用与该类手势导航栏能够兼容运行,即,既提高了电子设备屏幕的使用效率,又不影响应用的正常运行。并且,应用可以无需做额外改进,应用可以继续维持符合谷歌标准的版本,保证了用户的良好使用体验。
结合第一方面,第一方面实现的方法还包括:通过该第一应用获取到高度为0的避让区域;在高度为0的该避让区域之外,显示该第一应用的内容。
这样,由于应用的避让区域通过用于显示包括导航栏的信息,因此,实施本发明可以实现,在采用几乎不占用屏幕显示空间的手势导航栏的情况下,避免因为应用的避让布局,导致电子设备在避让区域内空白即显示白条,提高了应用程序的屏幕显示占用率,给用户带来良好的屏幕使用体验。
结合第一方面,在第一方面的某些实现方式中,该电子设备还包括窗口管理模块,在通过该第一应用获取到高度为0的避让区域之前,该方法还包括:通过该第一应用向窗口管理模块请求获取避让区域;通过该窗口管理模块获取到该手势导航栏的高度,还基于该手势导航栏的高度获取到高度为0的该避让区域,并返回至该第一应用。
这样,可以具体实现第一应用获取到避让区域高度为0,提高了实现第一方面方法的可能性,避免了获取到避让区域高度不为0,使得避让区域显示较大,影响了应用程序的屏幕占用的问题,并且避免了显示屏中避让区域显示白条,影响了用户的使用体验的问题。
结合第一方面,在第一方面的某些实现方式中,该的方法基于该手势导航栏的高度获取到高度为0的该避让区域,具体包括将该手势导航栏的高度修改为0,得到高度为0的该避让区域。
这样,获取手势导航栏高度时,可以通过修改获得的手势导航栏高度数据,从而可以在不同手势导航栏高度值的情况下,例如手势导航栏高度可以为1,也可以为2,将该手势导航栏高度值修改为0,提高了实现第一方面方法的可能性,避免了对于获取的手势导航栏高度不为0的情况下,获取的避让区域高度不为0,使得显示屏中显示的避让区域较大的问题。
结合第一方面,在第一方面的某些实现方式中,该第一应用获取到该手势导航栏的高度,具体包括:通过该第一应用向该电子设备的资源管理模块请求获取该手势导航栏的高度;通过该资源管理模块从该电子设备中的系统用户界面中获取到该手势导航栏的高度为该第一高度,并将该第一高度返回至该第一应用。
这样,在第一应用获取到手势导航栏的高度的过程中,该资源管理模块通过系统用户界面获取到手势导航栏高度,避免了资源管理模块无法直接获取手势导航栏高度的问题。
结合第一方面,在第一方面的某些实现方式中,该第一高度预置在该电子设备中的系统用户界面中。
这样,在第一高度预设到电子设备的系统用户界面之后,提高了第一高度数据在电子设备中的稳定性,避免了使用电子设备时的需要临时配手势导航栏的高度参数的问题,也避免了其他应用程序或用户修改重要的系统设置参数的问题。
结合第一方面,在第一方面的某些实现方式中,该第一高度还小于第一阈值。
这样,在第一阈值的限制下,可以保证第一高度不为0且足够小,在该第一高度的限制下,手势导航栏的显示区域足够小,使得用户几乎看不到手势导航栏。提高了应用的屏幕占用率,避免了用户操作应用的空间缩小的问题,满足了用户的使用体验。
结合第一方面,在第一方面的某些实现方式中,该第一高度为1设备独立像素dp。
这样,在第一高度为1dp时,可以保证手势导航栏的实际显示区域足够小,使得用户几乎看不到手势导航栏,从而实现了无提示的手势导航效果,扩展了无提示的手势导航栏实现的具体场景,提高了应用的屏幕占用率,避免了手势导航栏高度设置过大,影响到用户使用体验的问题。
结合第一方面,在第一方面的某些实现方式中,该第一操作包括以下任意一种:切换摄像头的操作、播放语音消息的操作。
这样,在多种应用场景下,都可以保证正常响应该操作。
结合第一方面,在第一方面的某些实现方式中,该第一应用为系统应用或第三方应用。
这样,表明了第一应用的范围,考虑到读取手势导航栏高度的应用都有可能出现问题,提高了对于第一应用所属范围的理解程度,避免了对于读取手势导航高度后,可能出现问题的应用程序范围不明确的问题。
第二方面,本申请提供了一种电子设备,该电子设备包括一个或多个存储器、一个或多个处理器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该电子设备执行上述第一方面中任一项所描述的方法。
第三方面,本申请提供了一种芯片,该芯片应用于电子设备该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行上述第一方面中任一项所描述的方法。
第四方面,本申请提供了一种计算机可读存储介质,包括指令当该指令在电子设备上运行时,使得该电子设备执行上述第一方面中任一项所描述的方法。
附图说明
图1为本申请实施例提供的一种涉及应用获取手势导航栏高度信息时的运行流程示意图;
图2为本申请实施例提供的另一种涉及应用获取手势导航栏高度信息时的运行流程示意图;
图3为本申请实施例提供的一种涉及应用获取避让信息时的运行流程示意图;
图4为本申请实施例提供的另一种涉及应用获取避让信息时的运行流程示意图;
图5A-图5B为本申请实施例提供的一组应用运行故障时的用户界面示意图;
图6A-图6B为本申请实施例提供的一组正常运行应用但显示白条的用户界面示意图;
图7A-图7B为本申请实施例提供的一组正常运行应用且正常显示的用户界面示意图;
图8为本申请实施例提供的一种电子设备软件架构框图;
图9为本申请实施例提供的一种电子设备硬件架构框图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请以下实施例中的术语“用户界面 (user interface,UI)”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接收形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markuplanguage,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphicuser interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
本申请涉及以下术语:
导航栏,是指一种电子设备的系统应用。导航栏的显示方式例如包括:三键导航和带提示条的手势导航栏(例如底部导航栏)。由于上述两种导航栏显示方式属于谷歌标准中制定的导航类型,并且该两种导航栏的高度信息均大于0设备独立像素(deviceindependent pixels,dp),并且该高度的大小足以使得显示屏中能够显示出用户可以明显看到的导航栏。因此,为了符合谷歌标准,大部分应用都仅适配这类三键导航和带提示条的手势导航栏的处理逻辑。
本申请提供了另一种导航栏的显示方式,该导航栏显示方式为不包括提示信息的手势导航栏(后文将不包括提示信息的手势导航栏简称为手势导航栏)。该不包括提示信息的手势导航栏的高度信息可以为0dp,或者可以为略大于0dp的其他数值,例如1dp。当该手势导航为0dp时,则显示屏中不会显示手势导航;当该手势导航栏为略大于0dp的数值时,在显示屏中显示该手势导航栏时,无论该类手势导航栏中是否包括提示条/提示线,由于该类手势导航栏几乎不占用显示空间,可以达到用户几乎看不到导航栏的效果,进而无法达到提示用户通过该手势导航栏实现导航功能的目的,因此可以将这类导航栏称为不包括提示信息的手势导航栏。可见,这样的手势导航栏的显示方式,可以在保留导航功能的前提下,几乎不占或者占用及小的显示区域,进而可以提高屏幕使用效率,提升用户体验。
手势导航栏高度信息,可以包括手势导航栏实际高度值。可选的,手势导航栏高度信息还可以包括手势导航栏框架高度值。其中,手势导航栏实际高度值是指在电子设备显示屏上显示导航栏的高度,手势导航栏框架高度是指在电子设备显示屏上显示的大于或等于手势导航栏的高度,并且,电子设备显示屏中的手势导航栏框架的显示区域中包含手势导航栏的显示区域。上述高度可用dp数值单位来衡量,并且可以是从显示屏底部向上标度的数值。
第三方应用,是指非电子设备的生产商所提供或研发的应用。电子设备的生产商可以包括该电子设备的制造商、供应商、提供商或运营商等。
第一应用,是指采用本发明方法在电子设备中运行的应用程序,该应用程序可以包括系统应用、第三方应用等。具体的,第一应用可以在本实施例中以应用A或应用B示出。
在本申请中,可通过将手势导航栏高度信息配置为0,使得手势导航栏不占用屏幕显示空间,为其他应用提供更多显示空间,进而提高屏幕使用效率。在该场景下,涉及应用获取手势导航栏高度信息时的运行流程具体如下:
图1示出了一种涉及应用获取手势导航栏高度信息时的运行流程示意图。
该运行流程涉及第三方应用、System UI和系统资源管理模块。其中,关于第三方应用、System UI和系统资源管理模块的作用,可以参考后文对图8中电子设备软件架构的描述。
具体的,该第三方应用可以被称为第一应用。
图1仅以第三方应用为例来介绍其获取高度为0的手势导航栏的方法流程,关于涉及系统应用获取手势导航栏高度信息时的运行流程与涉及下述第三方应用获取手势导航栏高度信息时的运行流程类似,因此,对于系统应用获取手势导航栏高度信息的运行流程可参考下述第三方应用获取手势导航栏高度信息的运行流程,在此暂不赘述。
如图1所示,一种第三方应用获取手势导航栏高度信息方法200具体包括以下步骤:
S201,System UI配置有高度信息为0dp的手势导航栏。
具体的,可以预先将手势导航栏高度信息在System UI配置为0dp,具体可以在System UI中的导航栏资源配置模块中完成预配置。
具体的,该配置手势导航栏高度信息为0dp具体包括配置手势导航栏实际高度值为0dp,可选的,还包括配置手势导航栏框架高度值为0dp。关于手势导航栏实际高度和手势导航栏框架高度的定义可以参考前文的描述。
其中,手势导航栏高度信息在System UI配置为0dp,该手势导航栏可以在给用户正常提供手势导航栏功能的同时,为应用提供更多的显示空间,提高屏幕的使用效率,让用户得到极致的使用体验。
S202,第三方应用接收用户触发操作。
具体的,第三方应用接收到的触发操作可以包括启动第三方应用的操作,也可以包括在第三方应用启动运行后,触发第三方应用执行特定业务的操作。
具体的,该用户触发操作可以被称为第一操作。
具体的,该特定业务因不同应用而定,只要涉及触发应用获取手势导航栏高度信息时,电子设备执行的业务均可称为特定业务。例如,当应用A执行切换前后置摄像头的业务时,或应用B执行播放语音消息的业务时,均涉及到获取高度,因此对于应用A来说,切换摄像头的业务属于特定业务,对于应用B来说,播放语音消息的业务也属于特定业务。具体的,对于触发应用A切换前后置摄像头的操作可参考图5A中a示出的操作。对于应用B触发设备执行播放语音消息的操作可参考图5B的a示出的操作。
可选的,在S202中,第三方应用可以不经过用户的触发操作,而是在运行过程中自动执行特定业务。
S203,第三方应用向系统资源管理模块请求获取手势导航栏高度信息。
具体的,在第三方应用接收到上述触发操作后,第三方应用将要执行特定业务,执行特定业务具体包括:第三方应用向系统资源管理模块请求获取手势导航栏高度信息,在获取的手势导航栏高度信息满足条件时则成功执行该特定业务,在获取的手势导航栏高度信息不满足条件时则无法成功执行该特定业务,相当于第三方应用会运行故障(见S206中的描述)。
其中,第三方应用向系统资源管理模块请求获取手势导航栏高度信息的具体实现包括:应用程序调用相应函数来请求获取手势导航栏高度信息。具体的,获取手势导航栏高度信息的函数可以包括getResources(),getIdentifier(String name, StringdefType, String defPackage),以及getDimensionPixelSize()。
getResources()用于获取到系统资源Resources对象。
getIdentifier()中的三个参数依次为资源名称,文件类型和包名。当上述三个参数依次为navigation_bar_height、dimen和android时,则代表获取安卓(Android®)系统应用内用以定义尺寸资源文件dimens.xml中的称为navigation_bar_height的导航栏标志符。
getDimensionPixelSize(int id)用于获取像素为单位,用于制定id资源的大小。
S204,系统资源管理模块获取手势导航栏高度信息为0dp。
系统资源管理模块接收到S203的请求后,从System UI中获取手势导航栏高度信息。具体的,系统资源管理模块执行getResources().getIdentifier()函数中具体的运行流程,并获取到手势导航栏高度信息为0dp。
具体的,该手势导航栏高度信息为0dp,包括配置的手势导航栏实际高度值为0dp,可选的,还包括配置的手势导航栏框架高度值为0dp。
S205,系统资源管理模块向第三方应用返回手势导航栏高度信息。
系统资源管理模块向第三方应用返回手势导航栏高度信息,该手势导航栏高度信息包括手势导航栏实际高度值,可选的,还包括手势导航栏框架高度值。
S206,第三方应用基于获取到的手势导航栏高度信息,确定手势导航栏高度不大于0,响应于触发操作,运行故障。
具体的,第三方应用基于获取到的手势导航栏高度信息,判断手势导航栏高度信息是否大于0。若大于0,则响应触发操作执行对应的特定业务,即该第三方应用可以正常运行。若不满足大于0,则无法成功执行触发操作对应的特定业务,即该第三方应用运行故障。
具体的,上述判断手势导航栏高度信息是否大于0可以由以下代码实现:
int resourceId = getResources().getIdentifier("navigation_bar_height", "dimen", "android");
if (resourceId>0)
{
result = getResources().getDimensionPixelSize(resourceId);
}
第三方应用通过执行上述代码来判断返回参数的合理性,具体的,可以判断导航栏标志符是否大于0,若大于0,则为合理的导航栏标志符,并在相应函数中填入该导航栏标志符,得到函数返回的手势导航栏高度信息。若不满足大于0,则不为合理的导航栏标志符,无法得到手势导航栏高度信息,第三方应用运行故障。其中判断导航栏标志符可以作为判断手势导航栏高度信息的一种实现方式,导航栏标志符不满足条件则代表手势导航栏高度信息不满足条件。
此外,在第三方应用未能成功响应触发操作执行对应特定业务时,则第三方应用可以输出报错的提示信息,或者未输出提示信息且不作任何响应。具体可以参见后文对图5A的b和图5B的b中所示出的运行故障时的界面描述。
在前述图1所示的方法流程中,第三方应用判断是否正常运行的条件为手势导航栏高度是否大于0,的原因在于:在原生谷歌定义的系统框架中,导航栏高度均大于0dp,所以第三方应用为了适配原生谷歌定义的系统框架,均制定针对导航栏高度大于0dp的处理逻辑,没有制定手势导航栏高度信息值为0dp的处理逻辑。因此,第三方应用需要通过判断导航栏高度是否大于0dp,以确定是否正常运行。
通过前述对图1的介绍,可以发现,在配置高度为0dp的手势导航栏情况下,虽然达到导航栏不占用显示区域,进而提高屏幕使用效率的目的,但是一些应用存在不适配这类导航栏的处理逻辑,进而会出现运行故障的问题,给用户带来了不良的使用体验。尤其是对于某些海内外使用人数众多的应用软件,一旦出现该故障,将严重影响用户的使用体验。
因此,在为了采用手势导航栏高度为0的情况下,能够保证应用正常运行,可以通过增加白名单制度,保证白名单内部的应用可以正常运行。具体的,通过在前述S204-S205之间,增加对于获取手势导航栏高度的应用判断是否为白名单中应用的步骤,若是,则将该手势导航栏高度信息从0dp修改为非0值,例如1dp,并且向第三方应用返回该修改后的手势导航栏高度信息。若该应用包名不在白名单内,则直接向第三方应用返回为0dp手势导航栏高度信息。增加白名单机制后,则可以使得白名单内的应用接收到的手势导航栏高度信息为1dp,进而使得第三方应用成功执行对应的特定业务,即正常运行。若不位于白名单内的第三方应用接收到的手势导航栏高度信息为0dp时,则第三方应用运行故障。
应用包名(Package Name),是指作为应用的唯一标识。包名必须唯一,一个包名代表一个应用,不允许两个应用使用同样的包名。
但是,采用白名单制度仅能保证部分应用可以在采用手势导航栏高度信息值为0dp的情况下正常运行,未能达到使所有应用都能正常运行的目的。并且白名单还需要长期人工维护,不能预先加入所有存在运行故障的应用,因此该白名单机制并不能从根本上解决问题。
为了解决前述问题,具体的,为了既提高屏幕使用效率,又能从根源上解决应用使用手势导航栏高度信息时出现的运行故障问题,本申请提供了一种应用与手势导航栏兼容运行方法、图形界面及相关装置。该方法包括:在电子设备的System UI中将手势导航栏高度信息配置为大于0且小于第一阈值,电子设备的应用接收触发操作,该应用获取到非0的手势导航栏高度信息后成功执行触发操作对应的业务。此外,该应用还向窗口管理模块获取避让信息,窗口管理模块基于从System UI中获取的手势导航栏高度信息,将得到的避让信息从非0修改为0后返回至应用,电子设备在成功执行上述业务的过程中不显示白条。具体的,该避让信息包括避让区域。
其中,手势导航栏高度信息大于0且小于第一阈值,只需保证用户几乎看不到显示屏中的手势导航栏即可,该阈值受电子设备的显示屏的像素密度参数决定,当不同的电子设备的显示屏的像素密度参数不同时,该第一阈值可以配置不同的值,本申请后文实施例仅以将手势导航栏高度信息配置为1dp为例。
实施本申请提供的应用与手势导航栏兼容运行方法,可以带来以下效果:
(1)在保证手势导航栏几乎不占用电子设备的显示空间的情况下,保证应用能够成功执行业务,即正常运行。
(2)在应用与手势导航栏兼容运行过程中,避免了由于应用布局避让带来的电子设备显示白条的问题。
(3)还可以保证通过谷歌框架的兼容性测试要求。
对于应用与手势导航栏兼容运行的方法,包括配置有手势导航栏的高度信息,使得应用可适配该手势导航栏高度信息,进而正常运行,具体可以参考后文对图2中S302-S306的描述。
可选的,应用与手势导航栏兼容运行的方法,还包括修改避让信息,使得在应用运行时,不影响电子设备的正常显示,具体可以参考图4所示的S501-S509步骤。
图2示出了另一种涉及应用获取手势导航栏高度信息时的运行流程示意图。
图2所示的流程涉及了第三方应用、System UI和系统资源管理模块。
其中,涉及的第三方应用、System UI和系统资源管理模块,具体描述可以参考后文图8电子设备软件架构中的描述。
系统应用的另一种涉及获取手势导航栏高度信息时的运行流程与下述第三方应用的另一种涉及获取手势导航栏高度信息时的运行流程类似,因此,对于系统应用的另一种获取手势导航栏高度信息的运行流程可参考下述第三方应用的另一种获取手势导航栏高度信息的运行流程,在此暂不赘述。
如图2所示,另一种涉及应用获取手势导航栏高度信息时的运行流程300具体包括以下步骤:
S301,System UI配置有高度信息为1dp的手势导航栏。
S302,第三方应用接收用户触发操作。
S303,第三方应用向系统资源管理模块请求获取手势导航栏高度信息。
S304,系统资源管理模块获取到手势导航栏高度信息为1dp。
具体的,该1dp的手势导航栏高度的可以被称为第一高度。
S305,系统资源管理模块向第三方应用返回手势导航栏高度信息。
对于S301-S305步骤具体实现,与前文图1的S201-S205步骤具体实现类似,其区别在于S301-S305步骤中涉及的高度非0dp,例如为1dp,因此对于S301-S305步骤描述可参考前文图1的S201-S205步骤描述。
S306,第三方应用基于获取到的手势导航栏高度信息,确定手势导航栏高度大于0,响应于触发操作,正常运行。
S306步骤具体实现,与前文图1的S206步骤具体实现类似,其区别在于S306步骤中涉及的高度非0dp,例如为1dp。具体的,在获取到手势导航栏高度信息为1dp之后,第三方应用可以正常响应于用户的触发操作并正常运行。
在应用A正常运行过程中,电子设备可能显示白条或者不显示白条。
显示白条的实现方法包括:一些应用在运行过程中涉及布局避让,具体的,该应用进行布局避让需要获取insets值,并基于该insets值来为除该应用外的其他显示内容进行布局避让,该insets值为根据手势导航栏高度信息得出的。具体的,基于该手势导航栏高度信息非0dp,得到的该insets值非0dp,则出现白条。电子设备可以显示如图7A和图7B的界面。其中图7A的b和图7B的b分别示出了一种虽然正常运行但是有白条的显示界面。关于上述获取insets值的方法,具体的实现方式可以参考如图3所示的流程。
不显示白条的实现方法包括:一些应用的运行过程中不涉及布局避让,或者在应用布局避让的过程中基于修改相关数据使得获取的布局避让相关参数为0dp,例如修改获取的手势导航栏高度信息,使得获取的insets值为0dp。电子设备可以显示如图7A和图7B的界面。其中图7A的b和图7B的b分别示出了一种不同的第三方应用正常运行且没有白条的显示界面。关于上述获取insets值的方法,具体的实现方式可以参考如图4所示的流程。
接下来结合图3来介绍本申请提供的一种电子设备发生显示问题的界面运行流程示意图。
图3示出了一种涉及应用获取避让信息时的运行流程示意图。
图3所示的流程涉及了第三方应用、System UI、系统资源管理模块和窗口管理模块。
其中,涉及的第三方应用、System UI、系统资源管理模块和窗口管理模块,具体描述可以参考后文图8电子设备软件架构中的描述。其中第三方应用可以包括第一应用,具体的,可以为应用A,也可以为应用B。
具体的,系统应用获取避让信息时的运行流程与下述第三方应用获取避让信息时的运行流程类似,因此,对于系统应用获取避让信息时的运行流程可参考下述第三方应用获取避让信息时的运行流程,在此暂不赘述。
如图3所示,一种电子设备发生显示问题的界面运行流程400具体包括以下步骤:
S401,第三方应用向窗口管理模块获取insets值。
具体的,第三方应用在接收到触发操作后,可以向管理模块请求获取insets值。该触发操作可以是上述图2的S302步骤示出的操作,或者是其他操作。具体的,电子设备除了执行图2后续的S303-S306步骤,还执行后续S402-S408步骤。
S402,窗口管理模块向System UI发送获取insets值相关数据。
窗口管理模块在接收到第三方应用发送的获取insets值请求之后,向System UI发送获取insets值相关数据。具体的,窗口管理模块向System UI发送的获取insets值相关数据。
S403,System UI向系统资源管理模块发送获取insets值相关数据。
System UI向系统资源管理模块发送获取insets值相关数据。具体的,System UI向系统资源管理模块发送的获取insets值相关数据中,包括手势导航栏高度信息。
S404,系统资源管理模块对获取的手势导航栏高度信息加1dp。
具体的,系统资源管理模块将手势导航栏实际高度值与手势导航栏框架高度值均从1dp增加为2dp。该手势导航栏高度信息的修改操作为可选的方案,可以修改该手势导航栏高度信息也可以不修改该手势导航栏高度信息。对于该手势导航栏高度信息的具体修改方式也为可选方案,手势导航栏高度信息可以修改并增加1dp或其他数值。具体的,对于选择上述将手势导航栏高度信息从1dp修改为2dp的方案,在显示屏显示该手势导航栏时,由于这类手势导航栏几乎不占用显示空间,可以达到用户几乎看不到导航栏的效果。同时,因为在谷歌系统的框架中,对于偶数参数的处理效率更高,故该修改方案在谷歌系统的框架中的后续数据处理执行效率更高,参与计算速度更快,有利于后续的数据处理。
S405,系统资源管理模块向System UI发送修改后的手势导航栏高度信息。
具体的,System UI接收到手势导航栏高度信息为2dp,System UI根据上述接收到的信息生成用于计算insets值的相关参数。具体的,该相关参数可以为由手势导航栏实际高度值和手势导航栏框架高度值构成的框架(frame)参数。
S406,System UI向窗口管理模块发送insets相关参数。
其中,System UI向窗口管理模块发送insets相关参数可以为frame,该frame可以为矩形的数据格式。具体的,frame中可以包括矩形四条边距离电子设备的屏幕四周边缘的显示距离。
可选的,上述S405-S406步骤还可以替换为:直接由系统资源管理模块向窗口管理模块发送修改后的手势导航栏高度信息和insets相关参数。即上述手势导航栏高度信息和相关参数的传输可以仅在应用框架层内实现,而无需经过应用程序层的System UI再传递给窗口管理模块。
S407,窗口管理模块向第三方应用返回insets值。
窗口管理模块根据接收到的手势导航栏高度信息和相关参数,计算得到insets值。具体的,基于相关参数frame,得到的insets值为2dp。构成该frame的数据格式为具有2dp高度的矩形。在得到insets值之后,窗口管理模块向第三方应用返回该insets值。
S408,第三方应用基于获取到的insets值,显示白条。
其中,第三方应用基于获取到的insets值,响应于获取insets值请求,在电子设备中显示异常。具体的,第三方应用使用获得的2dp值,在显示界面中进行布局避让。由于insets值不为0dp,故在显示界面的底端留下了2dp高度的白条。具体的,当第三方应用为应用A时,该应用A显示的该异常界面可以如下图6A的b示出,当第三方应用为应用B时,该应用B显示的该异常界面可以如下图6B的b示出。可选的,电子设备中显示界面底端可以不显示上述的2dp白条,而是显示2dp高度的黑条。具体的,避让区域的显示形式不作限制,即避让区域可以显示白条也可以显示黑条。
接下来结合图4来介绍本申请提供的一种电子设备正常显示的界面运行流程示意图。
图4示出了另一种涉及应用获取避让信息时的运行流程示意图。
图4所示的流程涉及了第三方应用、System UI、系统资源管理模块和窗口管理模块。
其中,对于涉及的第三方应用、System UI、系统资源管理模块和窗口管理模块,具体描述可以参考后文图8电子设备软件架构中的描述。其中第三方应用可以为应用A,也可以为应用B。
具体的,系统应用的另一种获取避让信息时的运行流程与下述第三方应用的另一种获取避让信息时的运行流程类似,因此,关于系统应用的另一种获取避让信息时的运行流程可参考下述第三方应用的另一种获取避让信息时的运行流程,在此暂不赘述。
如图4所示,一种电子设备中应用正常显示的界面运行流程500具体包括以下步骤:
S501,第三方应用向窗口管理模块请求获取insets值。
S502,窗口管理模块向System UI发送获取insets值相关数据。
S503,System UI向系统资源管理模块发送获取insets值相关数据。
S504,系统资源管理模块对获取的手势导航栏高度信息加1dp。
S505,系统资源管理模块向System UI发送修改后的手势导航栏高度信息。
S506,System UI向窗口管理模块发送insets相关参数。
对于S501-S506步骤的具体实现,与前文图3的S401-S406步骤的具体实现类似,因此对于S501-S506步骤的描述可参考前文图3的S401-S406步骤的描述。
S507,窗口管理模块修改相关参数,得到新insets值。
窗口管理模块修改相关参数,具体的,可以是窗口管理模块修改接收到的frame值,将frame中表示上边框位置的数值与表示下边框位置数值修改为同一数值,从而实现将frame构成的矩形上下边框重叠,将一个具有2dp高度的矩形变为0dp高度的矩形。从而基于修改后的frame计算得到新的insets值为0dp。
具体的,frame是指在显示屏中显示的矩形区域,具体包括左上顶点和右下顶点在显示屏中的显示位置。通常,右下顶点的纵坐标为0,左上顶点的纵坐标即前述导航栏高度,在该种情况下,获取修改为0的insets值的方式具体包括:将左上顶点和右下顶点的纵坐标设置相同,例如将左上顶点的纵坐标修改为0,即可获取为0的insets值。
该新的insets值在作用于应用布局避让时,应用的显示界面将不会留下2dp高度的白条。
S508,窗口管理模块向第三方应用返回新的insets值。
具体的,窗口管理模块向第三方应用返回的insets值为0dp。
S509,第三方应用基于获取到的insets值,正常显示。
其中,第三方应用基于获取到的insets值,响应于获取insets值请求,在电子设备中显示正常。具体的,第三方应用根据insets值进行布局避让,由于为0dp,则不进行避让,进而不会显示异常的避让区域,即不会在电子设备屏幕底端显示白条或黑条,从而正确显示界面。当第三方应用为应用A时,该应用A的界面可以如图7A的b示出,当第三方应用为应用B时,该应用B的界面可以如图7B的b示出。
基于上述示出的方法的介绍,在执行上述方法中,电子设备相应的显示一些用户界面,包括故障运行,正常运行但白条和正常运行且无白条显示,具体的显示界面如下:
图5A-图5B示出了一组应用运行故障时的用户界面示意图。
图5A示出了一种应用运行故障时的用户界面示意图。
如图5A的a示出应用A通过后置摄像头拍摄图像时的用户界面。该界面包括:前后置摄像头转换图标602和前置摄像头601。
在应用A使用后置摄像头时,用户需要切换到使用前置摄像头进行拍摄操作的场景中,用户点击前后置摄像头转换图标602触发前后置摄像头开启转换操作,该操作可以属于图1的S202步骤中的用户触发操作。在用户触发该操作之后,若电子设备执行如图1中的S203-S206步骤,前置摄像头601无法正常启动,则无法成功执行上述操作对应的业务,即电子设备显示应用A运行故障界面,如图5A的b示出。
图5A的b示出应用A的一种在用户操作后的故障运行界面,该界面显示错误提示603,用于提示用户应用A未能成功响应上述摄像头切换操作。该操作执行失败的具体原因可以属于图1的S206步骤中所示的原因。
图5B示出了另一种应用运行故障时的用户界面示意图。
图5B的a示出应用B运行时的用户界面,包括用户发送的语音消息。
在应用B的聊天界面中,在用户需要播放发送的语音消息时,用户可以触碰发送的语音图标来播放语音,该操作可以属于图1的S202步骤中的用户触发操作。在用户触发该操作之后,若电子设备执行上文如图1中的S203-S206步骤,则无法成功执行上述操作对应的业务,即用户播放发送的语音消息发生故障的用户界面可以如图5B的b示出。
图5B的b示出一种应用B在用户操作后的故障显示界面。具体的,用户在触碰语音图标后,应用B无反馈,也无法播放语音信息。该操作执行失败的具体原因可以属于图1的S206步骤中所示的原因。
图6A-图6B示出了一组正常运行应用但显示白条的用户界面示意图。
图6A示出了一种正常运行应用但显示白条的用户界面示意图。
如图6A的a示出应用A通过后置摄像头拍摄图像时的用户界面。该界面包括:前后置摄像头转换图标602和前置摄像头601。
在应用A使用后置摄像头时,用户需要切换到使用前置摄像头进行拍摄操作的场景中,用户通过点击前后置摄像头转换图标602触发前后置摄像头开启转换操作,该操作可以属于图2的S302步骤中用户触发操作。在用户触发该操作之后,若电子设备执行上文如图2中所述的S303-S306步骤,前置摄像头601正常启动,则成功执行上述操作对应的业务。同时,在用户触发该操作之后,若电子设备执行上文如图3中所述的S401-S408步骤,则电子设备显示正常运行应用A但显示白条的用户界面,如图6A的b示出。
图6A的b示出应用A的一种在用户操作后正常运行但显示白条的用户界面,该界面正确显示前置摄像头拍摄画面,但在所示的界面底端呈现一道白色条带604。该界面底端呈现白条的具体原因可以属于图3的S408步骤中所示的原因。
图6B示出了另一种正常运行应用但显示白条的用户界面示意图。
图6B的a示出应用B运行时的用户界面,包括用户发送的语音消息。
在应用B的聊天界面中,用户需要播放发送的语音消息时,用户可以触碰发送的语音图标来播放语音,该操作可以属于图2的S302步骤中的用户触发操作。在用户触发该操作之后,若电子设备执行上文如图2中所述的S303-S306步骤,则成功执行上述操作对应的业务。同时,在用户触发该操作之后,若电子设备执行上文如图3中所述的S401-S408步骤,则电子设备显示正常运行应用B但显示白条的用户界面。即用户播放语音消息正常但显示白条的用户界面可以如图6B的b示出。
图6B的b显示出一种应用B在用户操作后播放语音消息正常但显示白条的用户界面。具体的,用户在触碰语音图标后,应用B语音消息图标改变为播放图标,并在显示界面底端显示白色条带604。该白色条带604显示的具体原因可以属于图3的S408步骤中所示的原因。
图7A-图7B示出了一组正常运行应用且正常显示的用户界面示意图。
图7A示出了一种正常运行应用且正常显示的用户界面示意图。
如图7A的a示出应用A通过后置摄像头拍摄图像时的用户界面。该界面包括:前后置摄像头转换图标602和前置摄像头601。
在应用A使用后置摄像头时,用户切换到需要使用前置摄像头进行拍摄操作的场景中,用户通过点击前后置摄像头转换图标602触发前后置摄像头开启转换操作,该操作可以属于图2的S302步骤中的用户触发操作。在用户触发该操作之后,若电子设备执行上文如图2中所述的S303-S306步骤,前置摄像头601正常启动,则成功执行上述操作对应的业务。同时,在用户触发该操作之后,若电子设备执行上文如图4中所述的S501-S509步骤,则电子设备显示正常运行应用A且不显示白条的用户界面,如图7A的b示出。
图7A的b示出应用A的一种在用户操作后正常运行且不显示白条的用户界面,该界面正确显示前置摄像头拍摄画面。
图7B示出了另一种正常运行应用且正常显示的用户界面示意图。
图7B的a示出应用B运行时的用户界面,包括用户发送的语音消息。
在应用B的聊天界面中,用户需要播放发送的语音消息时,用户可以触碰发送的语音图标来播放语音,该操作可以属于图2的S302步骤中的用户触发操作。在用户触发该操作之后,若电子设备执行上文如图4中所述的S501-S509步骤,则成功执行上述操作对应的业务。同时,在用户触发该操作之后,若电子设备执行上文如图4中所述的S501-S509步骤,则电子设备显示正常运行应用B且不显示白条的用户界面。即用户播放语音消息正常且不显示白条的用户界面,可以如图7B的b示出。
图7B的b示出一种应用B在用户操作后播放语音消息正常且不显示白条的用户界面。具体的,用户在触碰语音图标后,应用B语音消息图标改变为播放图标。
为了更好地理解本申请实施例,首先对本申请实施例涉及到的电子设备软件架构进行介绍。
图8示例性示出一种电子设备软件架构框图。
如图8所示,电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android®系统为例,示例性地说明该电子设备的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在部分实施例中,将Android®系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android® runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图8所示,在本申请实施例中,应用程序层包括:系统用户界面(System UI)和第一应用等。
其中,System UI为电子设备提供的可视化界面。例如,System UI用于提供显示导航栏、状态栏、通知栏、锁屏界面等等资源。关于导航栏的显示资源的信息具体可以由System UI中的导航栏资源配置模块提供,具体的,该导航栏资源配置模块中预先存储有手势导航栏高度信息。
其中,该第一应用可以为第三方应用或系统应用。该第一应用可以包括海内外使用人数众多的应用软件。第一应用可以获取到System UI中的手势导航栏高度信息。具体的,第一应用可以向应用程序框架层中的模块发送业务请求以控制其执行对应任务。例如可以控制应用程序框架层中的系统资源管理模块从System UI中获取手势导航栏高度信息。关于应用程序框架层的具体介绍可以如下文所示。
如图8所示,在本申请实施例中,应用程序框架层包括系统资源管理模块、窗口管理模块、视图系统模块、通知管理模块。
其中,系统资源管理模块可以基于应用的业务请求,从System UI中获取手势导航栏高度信息,并修改获取到的手势导航栏高度信息,然后返回至相应的应用。此外,系统资源管理模块还可以将修改后的手势导航栏高度信息发送至System UI,以供后续System UI与窗口管理模块进行业务交互。
其中,窗口管理模块用于管理窗口程序。窗口管理模块具有获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等功能。此外,窗口管理模块可以基于应用的业务请求,从System UI中获取到手势导航栏高度信息,以得到避让信息例如insets值,并将insets值发送给相应的应用。若窗口管理模块得到的insets值非0dp时,则还需将insets值改为0dp,然后将修改后的insets值发送给应用。
视图系统模块包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
通知管理模块使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
如图8所示,Android® runtime包括核心库和虚拟机。Android® runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),二维(2D)图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了二维图层和三维图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
如图8所示,内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层包括显示驱动、音频驱动、摄像头驱动以及传感器驱动。其中,显示驱动用于控制显示屏显示用户界面,例如图5A-图7B示出的用户界面。音频驱动用于驱动音频设备播放音频,例如播放后文图6B和图7B示出的语音信息。摄像头驱动用于驱动摄像头采集图像,例如采集到如图5A,图6A和图7A示出的拍摄界面中的图像,显示驱动用于驱动显示屏显示信息,例如显示如图5A,图6A和图7A示出的拍设备界面。传感器驱动用于控制传感器模块中相关的传感器采集对应参数,例如采集如图5A-图7B示出的触摸操作的相关数据。
电子设备可以是搭载iOS®、Android®、Microsoft®或者其它操作系统的便携式终端设备,例如手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence, AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,等等。
图9示出了一种电子设备900硬件架构框图。
电子设备900可以包括:处理器910,外部存储器接口920,内部存储器921,通用串行总线(universal serial bus,USB)接口930,充电管理模块940,电源管理模块941,电池942,天线1,天线2,移动通信模块950,无线通信模块960,音频模块970,扬声器970A,受话器970B,麦克风970C,耳机接口970D,传感器模块980,摄像头993,显示屏994,以及用户标识模块(subscriber identification module,SIM)卡接口995等。其中传感器模块980可以包括环境光传感器980A,距离传感器980B,触摸传感器980C等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备900的具体限定。在本申请另一些实施例中,电子设备900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器910可以包括一个或多个处理单元,例如:处理器910可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备900的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器910中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器910中的存储器为高速缓冲存储器。该存储器可以保存处理器910刚用过或循环使用的指令或数据。如果处理器910需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器910的等待时间,因而提高了系统的效率。
在一些实施例中,处理器910可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
USB接口930是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口930可以用于连接充电器为电子设备900充电,也可以用于电子设备900与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
在本申请实施例中,处理器910用于执行图1-图4中电子设备所执行的方法,关于该方法的具体介绍可参考前文对图1-图4的介绍。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备900的结构限定。在本申请另一些实施例中,电子设备900也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块940用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块940可以通过USB接口930接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块940可以通过电子设备900的无线充电线圈接收无线充电输入。充电管理模块940为电池942充电的同时,还可以通过电源管理模块941为电子设备供电。
电源管理模块941用于连接电池942,充电管理模块940与处理器910。电源管理模块941接收电池942和/或充电管理模块940的输入,为处理器910,内部存储器921,外部存储器,显示屏994,摄像头993,和无线通信模块960等供电。电源管理模块941还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块941也可以设置于处理器910中。在另一些实施例中,电源管理模块941和充电管理模块940也可以设置于同一个器件中。
电子设备900的无线通信功能可以通过天线1,天线2,移动通信模块950,无线通信模块960,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备900中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块950可以提供应用在电子设备900上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块950可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块950可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块950还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块950的至少部分功能模块可以被设置于处理器910中。在一些实施例中,移动通信模块950的至少部分功能模块可以与处理器910的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器970A,受话器970B等)输出声音信号,或通过显示屏994显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器910,与移动通信模块950或其他功能模块设置在同一个器件中。
无线通信模块960可以提供应用在电子设备900上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块960可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块960经由天线2接收电磁波,将电磁波信号解调以及滤波处理,将处理后的信号发送到处理器910。无线通信模块960还可以从处理器910接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备900的天线1和移动通信模块950耦合,天线2和无线通信模块960耦合,使得电子设备900可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC ,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system ,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备900通过GPU,显示屏994,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏994和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器910可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏994用于显示图像,视频等。显示屏994包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)。显示屏面板还可以采用有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flexlight-emitting diode,FLED),miniled,microLed,micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等制造。在一些实施例中,电子设备900可以包括1个或N个显示屏994,N为大于1的正整数。
在本申请实施例中,显示屏994用于显示在电子设备中,如图5A的b和图5B的b所示的,第三方应用与手势导航栏出现兼容性问题的显示界面,如图6A的b和图6B的b所示的解决第三方应用与手势导航栏兼容性问题,但未解决显示白条问题的显示界面,如图7A的b和图7B的b所示的解决第三方应用与手势导航栏兼容性问题,同时解决显示白条问题的显示界面。关于前述界面的具体介绍,可参考上述界面所对应的图5A的b到图7B的b中的介绍。
并且,显示屏994还用于显示,如图5A的a和图5B的a所示的触发第三方应用与手势导航栏出现兼容性问题的操作界面,如图6A的a和图6B的a所示的触发解决第三方应用与手势导航栏兼容性问题,但未解决显示白条问题的操作界面,如图7A的a和图7B的a所示的触发解决第三方应用与手势导航栏兼容性问题,同时解决显示白条问题的操作界面。关于上述该触发操作界面的具体介绍,可参考上述方法所对应的图6A的a到图7B的a中的介绍。
电子设备900可以通过ISP,摄像头993,视频编解码器,GPU,显示屏994以及应用处理器等实现拍摄功能。
ISP 用于处理摄像头993反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头993中。
摄像头993用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备900可以包括1个或N个摄像头993,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备900在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备900可以支持一种或多种视频编解码器。这样,电子设备900可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network ,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备900的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
内部存储器921可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory, DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等;
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。
快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(universal flashstorage,UFS)、嵌入式多媒体存储卡(embedded multi media card,eMMC)等。
随机存取存储器可以由处理器910直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器910直接进行读写。
在本申请实施例中,内部存储器921用于存储图1到图4中电子设备所执行的方法,关于该方法的具体介绍可参考前文对图1到图4的介绍外部存储器接口920可以用于连接外部的非易失性存储器,实现扩展电子设备900的存储能力。外部的非易失性存储器通过外部存储器接口920与处理器910通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
电子设备900可以通过音频模块970,扬声器970A,受话器970B,麦克风970C,耳机接口970D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块970用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块970还可以用于对音频信号编码和解码。在一些实施例中,音频模块970可以设置于处理器910中,或将音频模块970的部分功能模块设置于处理器910中。
扬声器970A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备900可以通过扬声器970A收听音乐,或收听免提通话。
受话器970B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备900接听电话或语音信息时,可以通过将受话器970B靠近人耳接听语音。
麦克风970C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风970C发声,将声音信号输入到麦克风970C。电子设备900可以设置至少一个麦克风970C。在另一些实施例中,电子设备900可以设置两个麦克风970C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备900还可以设置三个,四个或更多麦克风970C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口970D用于连接有线耳机。耳机接口970D可以是USB接口930,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
环境光传感器980A用于感知环境光亮度。电子设备900可以根据感知的环境光亮度自适应调节显示屏994亮度。环境光传感器980A也可用于拍照时自动调节白平衡。
距离传感器980B,用于测量距离。电子设备900可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备900可以利用距离传感器980B测距以实现快速对焦。
触摸传感器980C,也称“触控面板”。触摸传感器980C可以设置于显示屏994,由触摸传感器980C与显示屏994组成触摸屏,也称“触控屏”。触摸传感器980C用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏994提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器980C也可以设置于电子设备900的表面,与显示屏994所处的位置不同。
SIM卡接口995用于连接SIM卡。SIM卡可以通过插入SIM卡接口995,或从SIM卡接口995拔出,实现和电子设备900的接触和分离。电子设备900可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口995可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口995可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口995也可以兼容不同类型的SIM卡。SIM卡接口995也可以兼容外部存储卡。电子设备900通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备900采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备900中,不能和电子设备900分离。
下面结合捕获拍照场景,示例性说明电子设备900软件以及硬件的工作流程。
当触摸传感器980C接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头993捕获静态图像或视频。
应理解,本申请提供的上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请还提供一种电子设备,该电子设备可以包括:存储器和处理器。其中,存储器可用于存储计算机程序;处理器可用于调用所述存储器中的计算机程序,以使得该电子设备执行上述任意一个实施例中的方法。
本申请还提供了一种芯片系统,所述芯片系统包括至少一个处理器,用于实现上述任意一个实施例中电子设备执行的方法中所涉及的功能。
在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存程序指令和数据,存储器位于处理器之内或处理器之外。
该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过获取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性地,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性地,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
本申请还提供一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当所述计算机程序被运行时,使得计算机执行上述任一个实施例中电子设备执行的方法。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)。当所述计算机程序被运行时,使得计算机执行上述任一个实施例中电子设备执行的方法。
本申请的各实施方式可以任意进行组合,以实现不同的技术效果。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid StateDisk)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可获取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
总之,以上所述仅为本发明技术方案的实施例而已,并非用于限定本发明的保护范围。凡根据本发明的揭露,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种应用与手势导航栏兼容运行方法,其特征在于,所述方法应用于包括第一应用的电子设备,所述方法包括:
显示手势导航栏,所述手势导航栏不包括提示信息,所述提示信息用于提示用户通过手势实现导航;所述手势导航栏的高度为第一高度,所述第一高度大于0;
接收到对所述第一应用的第一操作;
通过所述第一应用获取到所述手势导航栏的高度;
判断所述手势导航栏的高度是否大于0,在所述手势导航栏的高度大于0的情况下执行所述第一操作对应的任务,在所述手势导航栏的高度未大于0的情况下禁止执行所述第一操作对应的任务;
通过所述第一应用获取到高度为0的避让区域;
在所述电子设备的显示屏中的,高度为0的所述避让区域之外,显示所述第一应用的内容。
2.根据权利要求1所述的方法,其特征在于,所述电子设备还包括窗口管理模块,在通过所述第一应用获取到高度为0的避让区域之前,所述方法还包括:
通过所述第一应用向所述窗口管理模块请求获取所述避让区域;
通过所述窗口管理模块获取到所述手势导航栏的高度,还基于所述手势导航栏的高度获取到高度为0的所述避让区域,并返回至所述第一应用。
3.根据权利要求2所述的方法,其特征在于,基于所述手势导航栏的高度获取到高度为0的所述避让区域,具体包括:将所述手势导航栏的高度修改为0,以得到高度为0的所述避让区域。
4.根据权利要求1所述的方法,其特征在于,通过所述第一应用获取到所述手势导航栏的高度,具体包括:
通过所述第一应用向所述电子设备的资源管理模块请求获取所述手势导航栏的高度;
通过所述资源管理模块从所述电子设备的系统用户界面System UI中获取到所述手势导航栏的高度为所述第一高度,并将所述第一高度返回至所述第一应用。
5.根据权利要求1所述的方法,其特征在于,所述第一高度预置在所述电子设备的System UI中。
6.根据权利要求1所述的方法,其特征在于,所述第一高度还小于第一阈值。
7.根据权利要求1所述的方法,其特征在于,所述第一高度为1设备独立像素dp。
8.根据权利要求1所述的方法,其特征在于,所述第一操作包括以下任意一种:用于切换摄像头的操作或用于播放语音消息的操作。
9.根据权利要求1所述的方法,其特征在于,所述第一应用为系统应用或第三方应用。
10.一种电子设备,其特征在于,所述电子设备包括一个或多个存储器、一个或多个处理器;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行如权利要求1-9中任一项所述的方法。
11.一种芯片,所述芯片应用于电子设备,其特征在于,所述芯片包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1-9中任一项所述的方法。
12.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311230545.7A CN116991302B (zh) | 2023-09-22 | 2023-09-22 | 应用与手势导航栏兼容运行方法、图形界面及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311230545.7A CN116991302B (zh) | 2023-09-22 | 2023-09-22 | 应用与手势导航栏兼容运行方法、图形界面及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116991302A CN116991302A (zh) | 2023-11-03 |
CN116991302B true CN116991302B (zh) | 2024-03-19 |
Family
ID=88525053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311230545.7A Active CN116991302B (zh) | 2023-09-22 | 2023-09-22 | 应用与手势导航栏兼容运行方法、图形界面及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116991302B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107132962A (zh) * | 2017-05-02 | 2017-09-05 | 青岛海信移动通信技术股份有限公司 | 导航栏控制方法及装置 |
CN107291226A (zh) * | 2017-06-12 | 2017-10-24 | 深圳市创梦天地科技股份有限公司 | 基于触摸手势的控制方法及装置、终端 |
CN107844236A (zh) * | 2017-10-17 | 2018-03-27 | 深圳市汉普电子技术开发有限公司 | Ios导航控制器页面平滑过渡的方法、装置和存储介质 |
CN112181264A (zh) * | 2019-07-03 | 2021-01-05 | 中兴通讯股份有限公司 | 一种手势识别方法和装置 |
CN114270298A (zh) * | 2019-10-08 | 2022-04-01 | 深圳市欢太科技有限公司 | 触摸事件的处理方法、装置、移动终端及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8732613B2 (en) * | 2012-09-06 | 2014-05-20 | Google Inc. | Dynamic user interface for navigating among GUI elements |
CN112639714A (zh) * | 2020-03-20 | 2021-04-09 | 华为技术有限公司 | 执行手势指令的方法、装置、系统及存储介质 |
-
2023
- 2023-09-22 CN CN202311230545.7A patent/CN116991302B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107132962A (zh) * | 2017-05-02 | 2017-09-05 | 青岛海信移动通信技术股份有限公司 | 导航栏控制方法及装置 |
CN107291226A (zh) * | 2017-06-12 | 2017-10-24 | 深圳市创梦天地科技股份有限公司 | 基于触摸手势的控制方法及装置、终端 |
CN107844236A (zh) * | 2017-10-17 | 2018-03-27 | 深圳市汉普电子技术开发有限公司 | Ios导航控制器页面平滑过渡的方法、装置和存储介质 |
CN112181264A (zh) * | 2019-07-03 | 2021-01-05 | 中兴通讯股份有限公司 | 一种手势识别方法和装置 |
CN114270298A (zh) * | 2019-10-08 | 2022-04-01 | 深圳市欢太科技有限公司 | 触摸事件的处理方法、装置、移动终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116991302A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220005255A1 (en) | Image rendering method and apparatus, and electronic device | |
WO2020093988A1 (zh) | 一种图像处理方法及电子设备 | |
CN116055773A (zh) | 一种多屏协同方法、系统及电子设备 | |
CN116360725B (zh) | 显示交互系统、显示方法及设备 | |
CN111371849A (zh) | 数据处理的方法和电子设备 | |
US20240153209A1 (en) | Object Reconstruction Method and Related Device | |
CN114461375B (zh) | 内存资源管理方法及电子设备 | |
CN114077464A (zh) | 显示控制方法和装置 | |
US20230368710A1 (en) | Vr display control method, electronic device, and computer-readable storage medium | |
CN116048933B (zh) | 一种流畅度检测方法 | |
CN115333941B (zh) | 获取应用运行情况的方法及相关设备 | |
CN115119048B (zh) | 一种视频流处理方法及电子设备 | |
CN114222187B (zh) | 视频编辑方法和电子设备 | |
CN116991302B (zh) | 应用与手势导航栏兼容运行方法、图形界面及相关装置 | |
CN115686182B (zh) | 增强现实视频的处理方法与电子设备 | |
CN114546820A (zh) | 一种应用程序的调试方法及电子设备 | |
CN116703689B (zh) | 一种着色器程序的生成方法、装置和电子设备 | |
CN115482143B (zh) | 应用的图像数据调用方法、系统、电子设备及存储介质 | |
CN116095512B (zh) | 终端设备的拍照方法及相关装置 | |
CN116795476B (zh) | 一种删除壁纸的方法及电子设备 | |
CN116700556B (zh) | 卡片生成方法及相关装置 | |
WO2023231818A1 (zh) | 一种应用界面显示方法及电子设备 | |
US20240134591A1 (en) | Projection display method and electronic device | |
CN117692723A (zh) | 视频编辑方法和电子设备 | |
CN117689796A (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 |