[go: up one dir, main page]

CN119493500A - 显示二维码的方法及相关电子设备 - Google Patents

显示二维码的方法及相关电子设备 Download PDF

Info

Publication number
CN119493500A
CN119493500A CN202311052022.8A CN202311052022A CN119493500A CN 119493500 A CN119493500 A CN 119493500A CN 202311052022 A CN202311052022 A CN 202311052022A CN 119493500 A CN119493500 A CN 119493500A
Authority
CN
China
Prior art keywords
screen
state
electronic device
application
display
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
Application number
CN202311052022.8A
Other languages
English (en)
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 CN202311052022.8A priority Critical patent/CN119493500A/zh
Priority to PCT/CN2024/079219 priority patent/WO2025039501A1/zh
Publication of CN119493500A publication Critical patent/CN119493500A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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
    • G06F3/04817Interaction 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 using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供一种显示二维码的方法及相关电子设备,电子设备包括显示屏,显示屏包括第一屏和第二屏,在显示屏处于折叠状态时,第一屏和第二屏的显示方向相背,在显示屏处于展开状态时,第一屏和第二屏的显示方向相同;显示屏处于折叠状态,在第一屏显示包括第一应用的界面的第一用户界面;在第一时间点接收第一操作,响应于第一操作在第二屏显示第二应用的第一二维码;在第二屏显示第一二维码的过程中,在第一屏显示第一用户界面;在第一二维码被扫描后,关闭第二屏;显示屏处于展开状态,在显示屏显示第一应用的第二用户界面;在第二时间点,接收第一操作,在第二屏不显示第二应用的第一二维码。本申请能够提高用户体验。

Description

显示二维码的方法及相关电子设备
技术领域
本申请涉及终端技术领域,尤其涉及一种显示二维码的方法及相关电子设备。
背景技术
在使用电子设备的过程中,若遇到要出示付款码或乘车码等二维码的场景,则需要中断当前正在进行的任务。然后打开相应的应用,再打开该应用中的二维码。例如,电子设备正在显示界面中显示电子书的内容,若此时要出示付款码或乘车码等二维码,则电子设备要暂停显示该电子书的内容。然后,再响应于用户的启动操作启动对应的应用(例如微信或支付宝等应用),再进一步响应于用户的相关操作在显示界面显示对应的二维码。这种显示二维码的方式,一方面操作步骤多;另一方面要中断当前正在进行的任务,影响用户体验。
发明内容
本申请提供了一种显示二维码的方法及相关电子设备,应用于具有外折折叠屏的电子设备,能够提高用户体验。
第一方面,本申请提供一种显示二维码方法,该方法应用于电子设备,前述电子设备包括显示屏,前述显示屏包括第一屏和第二屏,在前述显示屏处于折叠状态时,前述第一屏和前述第二屏的显示方向相背,在前述显示屏处于展开状态时,前述第一屏和前述第二屏的显示方向相同,前述第一屏和前述第二屏是前述显示屏的两个不同的显示区域;
前述显示屏处于折叠状态,在前述第一屏显示第一用户界面,前述第一用户界面包括第一应用的界面;
在第一时间点接收用户的第一操作,响应于前述第一操作在前述第二屏显示第二应用的第一二维码;在前述第二屏显示前述第一二维码的过程中,在前述第一屏显示前述第一用户界面;
在前述第一二维码被扫描后,关闭前述第二屏;
前述显示屏处于展开状态,在前述显示屏显示第一应用的第二用户界面,前述第二用户界面是将前述第一用户界面适配了展开状态以后的界面;
在第二时间点,接收用户的第一操作,在前述第二屏不显示前述第二应用的第一二维码。
可选的,前述第一操作包含在前述第一屏的背面敲击两次的操作。示例性地,若显示屏处于折叠状态,该第一屏的背面指的是第二屏的正面。若显示屏处于展开状态,该第一屏的背面指的是电子设备的后盖。
上述方案中,在电子设备的显示屏处于折叠状态时,为了不影响主屏(即上述第一屏)的任务执行,若用户需要出示某个二维码(例如乘车码、付款码或收款码等等),那么电子设备可以响应于用户的操作(例如上述第一操作)在背屏(即上述第二屏)显示该二维码。即本方案可以在不中断电子设备的第一屏当前正在进行的任务的情况下,快速在背屏拉起需要使用的二维码来显示,减少了显示相应二维码的操作步骤,提高用户体验。此外,若显示屏处于展开状态,为了不影响用户当前对显示屏的使用,即使接收到上述第一操作也不会在第二屏显示前述二维码。
一种可能的实现中,前述显示屏处于折叠状态,前述第一屏处于锁屏状态或灭屏状态;
在第三时间点,接收用户的第一操作,基于前述第一屏处于锁屏状态或灭屏状态,不显示前述第二应用的第一二维码。
上述方案中,在显示屏处于折叠状态,且第一屏处于锁屏状态或灭屏状态时,即使接收到上述第一操作也不会在第二屏显示前述二维码。一方面可以防止误触,另一方面可以保护用户的信息安全,避免在用户不感知的情况下泄露了用户的信息。
一种可能的实现中,前述第一屏显示第一用户界面之前,前述方法还包括:
前述电子设备处于展开态,前述电子设备显示前述第二用户界面,前述第二用户界面不包括第一悬浮窗口;
前述第一屏显示第一用户界面,包括:
在前述电子设备由前述展开态变为折叠态后,前述电子设备在第一屏显示前述第一用户界面,前述第一用户界面包括前述第一悬浮窗口,前述第一悬浮窗口中包括前述第一二维码的第一界面元素。
示例地的,一种实现方式中,电子设备响应于展开态变为折叠态的操作,在第一屏显示上述第一用户界面,此时该第一用户界面包括悬浮球(例如参见图4A中的(a)所示的可操作控件402A)。然后,电子设备响应于对该悬浮球的操作显示上述第一悬浮窗口。或者,另一种可能的实现中,电子设备响应于展开态变为折叠态的操作,在第一屏显示上述第一用户界面,且该第一用户界面包括前述第一悬浮窗口。可选的,若显示该第一悬浮窗口后预设时长(例如3秒或5秒等等)内,没有接收到用户对该第一悬浮窗口的操作。那么,该第一悬浮窗口变为悬浮球隐藏。
可选的,前述方法还包括:在前述显示屏处于折叠状态时,前述第一用户界面接收用户对前述第一界面元素的第二操作;响应于前述第二操作在前述第二屏显示前述第一二维码。
可选的,前述第一界面元素包括前述第二应用的图标、名称以及前述第一二维码的类型中的至少一项。
上述方案中,在显示屏处于折叠状态时,第一屏还可以显示上述第一悬浮窗口,为用户提供另一个可操作界面,以用于在第二屏拉起对应的二维码显示。丰富了在第二屏拉起二维码的操作方面,兼顾不同用户需求,提升用户体验。
一种可能的实现中,前述方法还包括:
响应于对前述第一悬浮窗口的下拉控件的操作,展开前述第一悬浮窗口并显示第三应用的第二二维码的第二界面元素;
接收用户对前述第二界面元素的第三操作,响应于前述第三操作在前述第二屏显示前述第二二维码。
上述方案中,还可以展开上述第一悬浮窗口,以显示更多的二维码选项,用户可以从中选择需要在背屏显示的二维码,操作便利。
一种可能的实现中,前述在前述第一二维码被扫描后,还包括:
在前述第一屏显示第二悬浮窗口,前述第二悬浮窗口中包括前述第一二维码被扫描完成的指示信息。
上述方案中,在背屏显示的二维码被扫描完成后,还可以在主屏显示提示扫描完成的窗口,以及时告知用户,提升用户体验。
一种可能的实现中,前述接收用户的第一操作,响应于前述第一操作在前述第二屏显示第二应用的第一二维码之前,还包括:
获取前述显示屏的第一状态信息;
在前述第一状态信息指示前述显示屏处于折叠状态、未锁屏且亮屏的情况下,监听前述第一操作的输入事件。
上述方案中,显示屏满足折叠、未锁屏及亮屏的状态时,电子设备才监听上述第一操作的输入事件,从而可以及时捕捉对应的事件并快速做出响应。
一种可能的实现中,前述接收用户的前述第一操作,前述显示屏未显示前述第一二维码之前,还包括:
获取前述显示屏的第二状态信息;
在前述第二状态信息指示前述显示屏处于目标状态的情况下,取消前述第一操作的输入事件的监听;该目标状态包括显示屏处于展开状态、锁屏状态或灭屏状态。
上述方案中,在显示屏处于展开状态、锁屏状态或灭屏状态时,电子设备取消第一操作的监听。具体的,取消第一操作的监听,则不会在第二屏拉起二维码。这对于在显示屏处于展开状态的情况,可以不影响显示屏正在进行的任务。对于显示屏处于锁屏状态或灭屏状态,则可以保护用户信息,避免用户信息泄露。
一种可能的实现中,前述响应于前述第一操作在前述第二屏显示第二应用的第一二维码,包括:
响应于前述第一操作在前述第二屏显示目标窗口和第三用户界面;前述第三用户界面为前述第二应用中包含前述第一二维码的用户界面,前述目标窗口包括第一区域和第二区域,前述第一区域为透明区域,前述第二区域为黑色区域,前述目标窗口覆盖前述第三用户界面,前述第一二维码和前述第一区域位置对应。即第一二维码通过第一区域显示出来。
上述方案中,上述目标窗口起到遮罩的作用,使得可以覆盖住上述第三用户界面中除二维码以外内容,减少不必要的干扰。
一种可能的实现中,前述关闭前述第二屏,包括:
将前述第一区域设置为黑色;
移除在前述第二屏显示的任务窗口,前述任务窗口包括前述第三用户界面;
关闭前述目标窗口。
上述方案中,为了快速给用户呈现出已经关闭第二屏,且为了不显示额外的内容干扰用户。可以先将上述透明的第一区域设置为黑色,那么整个覆盖在上层的目标窗口都是黑色,则背屏全屏呈黑色。然后,再执行背屏任务狂口的移除等操作,并关闭上述目标窗口,从而完成背屏的关闭。
第二方面,本申请提供一种显示二维码的方法,该方法应用于电子设备,前述电子设备包括显示屏,前述显示屏包括第一屏和第二屏,在前述显示屏处于折叠状态时,前述第一屏和前述第二屏的显示方向相背,在前述显示屏处于展开状态时,前述第一屏和前述第二屏的显示方向相同,前述第一屏和前述第二屏是前述显示屏的两个不同的显示区域;
前述显示屏处于折叠状态,在前述第一屏显示第一应用的用户界面和第一悬浮窗口,前述第一悬浮窗口中包括第二应用的第一二维码的第一界面元素;
在第一时间点接收用户对前述第一界面元素的选择操作,响应于前述选择操作在前述第二屏显示前述第一二维码;在前述第二屏显示前述第一二维码的过程中,在前述第一屏显示前述第一应用的用户界面;在前述第一二维码被扫描后,关闭前述第二屏;
在前述显示屏处于目标状态时,前述显示屏未显示前述第一悬浮窗口,前述目标状态包括前述显示屏处于展开状态、锁屏状态或灭屏状态。
上述方案中,在电子设备的显示屏处于折叠状态时,为了不影响主屏(即上述第一屏)的任务执行,若用户需要出示某个二维码(例如乘车码、付款码或收款码等等),那么电子设备可以响应于用户的操作(例如上述的选择操作)在背屏(即上述第二屏)显示该二维码。即本方案可以在不中断电子设备的第一屏当前正在进行的任务的情况下,快速在背屏拉起需要使用的二维码来显示,减少了显示相应二维码的操作步骤,提高用户体验。此外,若显示屏处于展开状态,为了不影响用户当前对显示屏的使用,即使接收到上述第一操作也不会在第二屏显示前述二维码。若显示屏处于锁屏状态或灭屏状态,为了保护用户的信息安全,即使接收到上述第一操作也不会在第二屏显示前述二维码。
第三方面,本申请提供一种电子设备,前述电子设备包括显示屏,前述显示屏包括第一屏和第二屏,在前述显示屏处于折叠状态时,前述第一屏和前述第二屏的显示方向相背,在前述显示屏处于展开状态时,前述第一屏和前述第二屏的显示方向相同,前述第一屏和前述第二屏是前述显示屏的两个不同的显示区域;
该电子设备还包括处理单元,用于执行如下操作:
前述显示屏处于折叠状态,在前述第一屏显示第一用户界面,前述第一用户界面包括第一应用的界面;
在第一时间点接收用户的第一操作,响应于前述第一操作在前述第二屏显示第二应用的第一二维码;在前述第二屏显示前述第一二维码的过程中,在前述第一屏显示前述第一用户界面;
在前述第一二维码被扫描后,关闭前述第二屏;
前述显示屏处于展开状态,在前述显示屏显示第一应用的第二用户界面,前述第二用户界面是将前述第一用户界面适配了展开状态以后的界面;
在第二时间点,接收用户的第一操作,在前述第二屏不显示前述第二应用的第一二维码。
可选的,前述第一操作包含在前述第一屏的背面敲击两次的操作。示例性地,若显示屏处于折叠状态,该第一屏的背面指的是第二屏的正面。若显示屏处于展开状态,该第一屏的背面指的是电子设备的后盖。
一种可能的实现中,前述显示屏处于折叠状态,前述第一屏处于锁屏状态或灭屏状态;前述处理单元还用于执行如下操作:
在第三时间点,接收用户的第一操作,基于前述第一屏处于锁屏状态或灭屏状态,不显示前述第二应用的第一二维码。
一种可能的实现中,前述第一屏显示第一用户界面之前,前述处理单元还用于执行如下操作:
前述电子设备处于展开态,前述电子设备显示前述第二用户界面,前述第二用户界面不包括第一悬浮窗口;
前述处理单元具体用于执行如下操作:
在前述电子设备由前述展开态变为折叠态后,前述电子设备在第一屏显示前述第一用户界面,前述第一用户界面包括前述第一悬浮窗口,前述第一悬浮窗口中包括前述第一二维码的第一界面元素。
示例地的,一种实现方式中,电子设备响应于展开态变为折叠态的操作,在第一屏显示上述第一用户界面,此时该第一用户界面包括悬浮球(例如参见图4A中的(a)所示的可操作控件402A)。然后,电子设备响应于对该悬浮球的操作显示上述第一悬浮窗口。或者,另一种可能的实现中,电子设备响应于展开态变为折叠态的操作,在第一屏显示上述第一用户界面,且该第一用户界面包括前述第一悬浮窗口。可选的,若显示该第一悬浮窗口后预设时长(例如3秒或5秒等等)内,没有接收到用户对该第一悬浮窗口的操作。那么,该第一悬浮窗口变为悬浮球隐藏。
可选的,前述处理单元还用于执行如下操作:在前述显示屏处于折叠状态时,前述第一用户界面接收用户对前述第一界面元素的第二操作;响应于前述第二操作在前述第二屏显示前述第一二维码。
可选的,前述第一界面元素包括前述第二应用的图标、名称以及前述第一二维码的类型中的至少一项。
一种可能的实现中,前述处理单元还用于执行如下操作:
响应于对前述第一悬浮窗口的下拉控件的操作,展开前述第一悬浮窗口并显示第三应用的第二二维码的第二界面元素;
接收用户对前述第二界面元素的第三操作,响应于前述第三操作在前述第二屏显示前述第二二维码。
一种可能的实现中,前述在前述第一二维码被扫描后,前述处理单元还用于执行如下操作:
在前述第一屏显示第二悬浮窗口,前述第二悬浮窗口中包括前述第一二维码被扫描完成的指示信息。
一种可能的实现中,前述接收用户的第一操作,响应于前述第一操作在前述第二屏显示第二应用的第一二维码之前,前述处理单元还用于执行如下操作:
获取前述显示屏的第一状态信息;
在前述第一状态信息指示前述显示屏处于折叠状态、未锁屏且亮屏的情况下,监听前述第一操作的输入事件。
一种可能的实现中,前述接收用户的前述第一操作,前述显示屏未显示前述第一二维码之前,前述处理单元还用于执行如下操作:
获取前述显示屏的第二状态信息;
在前述第二状态信息指示前述显示屏处于目标状态的情况下,取消前述第一操作的输入事件的监听;该目标状态包括显示屏处于展开状态、锁屏状态或灭屏状态。
一种可能的实现中,前述处理单元具体用于执行如下操作:
响应于前述第一操作在前述第二屏显示目标窗口和第三用户界面;前述第三用户界面为前述第二应用中包含前述第一二维码的用户界面,前述目标窗口包括第一区域和第二区域,前述第一区域为透明区域,前述第二区域为黑色区域,前述目标窗口覆盖前述第三用户界面,前述第一二维码和前述第一区域位置对应。
一种可能的实现中,前述处理单元具体用于执行如下操作:
将前述第一区域设置为黑色;
移除在前述第二屏显示的任务窗口,前述任务窗口包括前述第三用户界面;
关闭前述目标窗口。
第四方面,本申请提供一种电子设备,前述电子设备包括显示屏,前述显示屏包括第一屏和第二屏,在前述显示屏处于折叠状态时,前述第一屏和前述第二屏的显示方向相背,在前述显示屏处于展开状态时,前述第一屏和前述第二屏的显示方向相同,前述第一屏和前述第二屏是前述显示屏的两个不同的显示区域;前述电子设备还包括处理单元,用于执行如下操作:
前述显示屏处于折叠状态,在前述第一屏显示第一应用的用户界面和第一悬浮窗口,前述第一悬浮窗口中包括第二应用的第一二维码的第一界面元素;
在第一时间点接收用户对前述第一界面元素的选择操作,响应于前述选择操作在前述第二屏显示前述第一二维码;在前述第二屏显示前述第一二维码的过程中,在前述第一屏显示前述第一应用的用户界面;在前述第一二维码被扫描后,关闭前述第二屏;
在前述显示屏处于目标状态时,前述显示屏未显示前述第一悬浮窗口,前述目标状态包括前述显示屏处于展开状态、锁屏状态或灭屏状态。
第五方面,本申请提供一种电子设备,包括:显示屏,一个或多个处理器,以及一个或多个存储器;前述一个或多个处理器与前述显示屏,以及前述一个或多个存储器耦合;前述一个或多个存储器用于存储计算机程序代码,前述计算机程序代码包括计算机指令,当前述一个或多个处理器执行前述计算机指令时,使得前述电子设备执行上述第一方面及其可能的实现方式中的任一项所述的方法。
第六方面,本申请提供一种电子设备,包括:显示屏,一个或多个处理器,以及一个或多个存储器;前述一个或多个处理器与前述显示屏,以及前述一个或多个存储器耦合;前述一个或多个存储器用于存储计算机程序代码,前述计算机程序代码包括计算机指令,当前述一个或多个处理器执行前述计算机指令时,使得前述电子设备执行上述第二方面所述的方法。
第七方面,本申请提供一种计算机可读存储介质,包括指令,当前述指令在电子设备上运行时,使得前述电子设备执行上述第一方面及其可能的实现方式中的任一项所述的方法。
第八方面,本申请提供一种计算机可读存储介质,包括指令,当前述指令在电子设备上运行时,使得前述电子设备执行上述第二方面所述的方法。
第九方面,本申请提供一种包含指令的计算机程序产品,当前述计算机程序产品在电子设备上运行时,使得前述电子设备执行上述第一方面及其可能的实现方式中的任一项所述的方法。
第十方面,本申请提供一种包含指令的计算机程序产品,当前述计算机程序产品在电子设备上运行时,使得前述电子设备执行上述第二方面所述的方法。
上述第三方面至第十方面用于配合实现上述第一方面、第二方面及其可能实现方式中任一项所述的方法,因此具有和上述第一方面、第二方面及其可能实现方式中对应的有益效果,此处不赘述。
附图说明
图1A至图1D为本申请实施例提供的电子设备的形态示意图;
图2为本申请实施例提供的电子设备的硬件结构示意图;
图3为本申请实施例提供的电子设备的软件结构示意图;
图4为本申请实施例提供的用户手持电子设备的示意图;
图4A至图4K为本申请实施例提供的电子设备显示的用户界面示意图;
图5至图10为本申请实施例提供的电子设备内部交互流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或者特性可以包含在本实施例申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是相同的实施例,也不是与其它实施例互斥的独立的或是备选的实施例。本领域技术人员可以显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中术语“第一”、“第二”、“第三”等是区别于不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元,或者可选地,还包括没有列出的步骤或单元,或者可选地还包括这些过程、方法、产品或设备固有的其它步骤或单元。
附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前,应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在本说明书中使用的术语“部件”、“模块”、“系统”、“单元”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件或执行中的软件。例如,单元可以是但不限于在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或分布在两个或多个计算机之间。此外,这些单元可从在上面存储有各种数据结构的各种计算机可读介质执行。单元可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一单元交互的第二单元数据。例如,通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
随着用户对电子设备的多样化需求的发展,兼具大屏和便捷性的折叠屏电子设备受到用户的广泛欢迎。电子设备的折叠屏可折叠形成至少两个屏。例如,折叠屏可沿折叠边或折叠轴折叠形成第一屏和第二屏。电子设备上折叠屏的折叠方式可以分为两类。一类为朝外翻折的折叠屏(简称外折折叠屏),另一类为朝内翻折的折叠屏(简称内折折叠屏)。其中,以折叠屏可以折叠形成第一屏和第二屏为例。外折折叠屏被折叠后,第一屏的显示方向和第二屏的显示方向相背,显示方向即为屏幕正面的朝向,也可以说是屏幕正面正对的方向,当屏幕显示时,显示方向是屏幕显示的朝向。示例性地,电子设备的显示屏为柔性屏。该第一屏和第二屏是同一显示屏中的两个不同的显示区域。
本申请实施例涉及的电子设备主要以具有外折折叠屏的电子设备为例。示例性地,外折折叠屏可以包括竖折和横折两种方式。竖折指的是将电子设备的屏幕纵向朝外翻折。横折指的是将电子设备的屏幕横向朝外翻折。本申请实施例以电子设备的屏幕横向朝外翻折为例介绍。例如,可以示例性参见图1A至图1D,示出了本申请实施例提供的一种具有横向外折折叠屏的电子设备的外观示意图。其中,图1A所示为该电子设备的显示屏展开状态(可以简称为展开态)时的示意图。可以看到,该电子设备包括第一屏和第二屏。在展开状态下,第一屏和第二屏可以形成一个大显示屏来显示用户界面。该第一屏和第二屏可以沿着折叠轴或折叠边(图1A至图1D中以折叠轴为例示出)折叠。
示例性地,在图1A中,第二屏可以沿着1a所示的方向折叠,和/或第一屏可以沿着1b所示的方向折叠可以获得如图1B所示的状态。示例性地,在图1B中,第二屏可以沿着1c所示的方向继续折叠可以获得图1C所示的折叠状态(可以简称为折叠态)。图1C中示出了折叠状态下的第二屏。折叠状态下的第一屏可以示例性参见图1D。
示例性地,上述第一屏为电子设备的主屏,上述第二屏为电子设备的副屏。若电子设备处于折叠状态,一般是第一屏面向用户,因此第二屏又可以称为背屏。
可以理解的是,上述图1A至图1D所示仅为示例,不构成对本申请实施例的限制。示例性地,在具体实现中,除了上述第一屏和第二屏之外,电子设备还可以包括其它的显示屏,本申请实施例对此不做限制。
在使用具有外折折叠屏的电子设备的过程中,若遇到要出示付款码或乘车码等二维码的场景,则需要中断当前正在进行的任务。然后打开相应的应用,再打开该应用中的二维码。例如,电子设备正在显示界面中显示电子书的内容,若此时要出示付款码或乘车码等二维码,则电子设备要暂停显示该电子书的内容。然后,再响应于用户的启动操作启动对应的应用(例如微信或支付宝等应用),再进一步响应于用户的相关操作在显示界面显示对应的二维码。这种显示二维码的方式,一方面操作步骤多,导致显示二维码的效率低;另一方面要中断当前正在进行的任务,影响用户体验。为了优化显示二维码的效率并提高用户体验,本申请实施例提供了一种显示二维码的方法及应用该显示二维码的方法的电子设备。
首先,示例性介绍一下本申请实施例提供的电子设备。该电子设备可以包括手持设备(例如,手机、平板电脑、掌上电脑等)、车载设备(例如,汽车、电动车、飞机、船舶等)、可穿戴设备(例如智能手表(如iWatch等)、智能手环、计步器等)、智能家居设备(例如,冰箱、电视、空调、电表等)、智能机器人、车间设备,以及各种形式的用户设备(User Equipment,UE)、移动台(Mobile station,MS)、终端设备(Terminal Equipment),等等。可以理解,此处介绍仅为示例,本申请实施例对电子设备的具体形态和实现方式不做限制。
请参阅图2,图2是本申请实施例提供的电子设备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等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
电子设备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的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。
基于图2所示本申请实施例的电子设备100的硬件结构示意图,下面介绍本申请实施例的电子设备100的软件结构框图,如图3所示。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为五层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,硬件抽象层(hardwareabstraction layer,HAL),以及内核层。
应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,短信息和背屏服务(TapTapService)等应用程序。
示例性地,上述背屏服务可以用于在电子设备的背屏拉起目标二维码显示。具体实现可以参考后面图7及其可能的实现中的介绍,此处暂不详述。示例性地,该目标二维码可以是付款码、乘车码或者任意的身份识别码等等,本申请实施例对此不做限制。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,电话管理器,资源管理器,通知管理器,视图系统和双击控制服务(TapTapControlService)等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
示例性地,上述双击控制服务可以用于实现屏幕折叠状态和亮灭屏状态的监听,以及实现屏幕的解锁状态的查询。具体实现可以参考后面图5及其可能的实现中的介绍,此处暂不详述。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)和手势服务(Motionservices)模块等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
示例性地,上述手势服务模块可以用于通过设备管理服务(hwExtDeviceManage)监听目标事件。具体实现可以参考后面图6及其可能的实现中的介绍,此处暂不详述。
硬件抽象层是抽象出来的介于内核层和上层之间的一层结构。是内核层的驱动的一个封装,以用于对上层提供统一接口。使得上层应用不必知道下层硬件具体怎么实现工作,从而屏蔽了底层的实现细节。
硬件抽象层可以提供标准接口,向更高级别的应用程序框架层显示设备硬件功能。硬件抽象层包含多个库模块,其中每个模块都为特定类型的硬件组件实现的一个接口。该库模块可以包括音频(Audio)模块,蓝牙(bluetooth)模块,相机(Camera)模块和传感器(Sensors)等。该传感器例如可以包括加速度传感器(accelerometer)、磁力传感器(magnetic field)、方向传感器(orientation)、陀螺仪(gyroscope)、环境光照传感器(light)、压力传感器(pressure)、温度传感器(temperature)和距离传感器(proximity)等。当应用程序框架层要求访问设备硬件时,系统将为该硬件组件加载对应的库模块。厂商可以在硬件抽象层定义的接口。
其中,示例性地,上述加速度传感器可以用于感知作用于电子设备的操作(例如背屏双击操作等)。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
基于上述示例性介绍的电子设备,本申请实施例提供了一种显示二维码的方法。该方法可以应用在具有外折折叠屏的电子设备处于折叠状态的场景下。例如,可以应用在图4所示的场景下。在图4中,电子设备处于折叠状态,用户手持该电子设备。该电子设备的第一屏面向用户,该电子设备的第二屏背对用户,下面将该第二屏称为背屏。示例性地,该电子设备的第一屏可以显示某一个应用的用户界面或桌面(即电子设备处于未锁屏且亮屏的状态)。
或者,另一种可能的实现中,若不考虑会泄露用户的信息等安全的因素,该电子设备只要处于折叠状态下即可实现本申请实施例提供的显示二维码的方法。例如,只要电子设备处于折叠态,则该电子设备处于灭屏状态但未锁屏,或者该电子设备处于锁屏状态等均可以实现该显示二维码的方法。但是,后面的介绍中主要以电子设备在折叠状态、未锁屏且亮屏的情况下实现该显示二维码的方法为例进行描述。该亮屏指的是电子设备的第一屏亮屏,后面的描述中同理,不再赘述。
上述灭屏指的是电子设备的显示屏熄灭。灭屏与亮屏相对,亮屏指的是电子设备的显示屏被点亮的状态。锁屏指的是为了保护电子设备中的数据安全而设置的一种保护状态。锁屏还可以防止误触或误按等。电子设备锁屏后需要通过输入密码或其它用户设置的解锁方式方可解锁。
下面对本申请实施例提供的显示二维码的方法进行示例性介绍。
首先,下面结合图4A至图4K示例性介绍在实现该显示二维码的方法的过程中,电子设备在显示屏显示的用户界面。
示例性地,在上述图4所示的场景下,即电子设备在折叠状态、未锁屏且亮屏的情况下,电子设备可以检测目标操作。该目标操作例如可以是用户在电子设备的背屏的连续两次敲击操作,或者可以是用户在电子设备的背屏的一次敲击操作,或者可以是用户在电子设备的背屏的一次敲击后滑动的操作等等。或者,该目标操作可以是作用于电子设备第一屏的敲击、滑动或拖曳及其任意结合的操作等等。可以理解的是,该目标操作可以是预先设置的,具体可以是任意预设置的操作,本申请实施例对此不做限制。示例性地,电子设备可以通过加速度传感器来检测该目标操作。示例性地,前述连续两次敲击操作例如可以是在预设时长内的两次敲击操作。该预设时长可以是0.5秒、1秒或2秒等等,本申请实施例对此不做限制。
示例性地,电子设备在折叠状态、未锁屏且亮屏的情况下,第一屏和背屏的用户界面可以分别参见图4A中的(a)和(b)。在图4A的(a)中可以看到,第一屏的用户界面可以在第一屏原来显示的界面401上显示可操作控件402A。该可操作控件402A是悬浮窗口402B的隐藏状态。该可操作控件402A可以响应于用户的操作调出悬浮窗口402B,具体可以参考后面的介绍,此处暂不详述。在图4A的(b)中可以看到,背屏处于黑屏,即不显示任何应用的用户界面。
一种可能的实现中,以上述目标操作为第一操作为例。该第一操作可以是在电子设备背屏连续两次敲击的操作等。在电子设备的第一屏和背屏如图4A所示的情况下,电子设备可以响应于该第一操作在第一屏中显示悬浮窗口402B(例如可以参见图4B的(a)),以及在背屏中显示目标二维码(例如可以参见图4B的(b))。图4B的(a)和图4B的(b)以目标二维码为第一应用的第一二维码为例示出。该第一应用可以是任意可以呈现付款码、乘车码等二维码的应用,本申请实施例对此不做限制。
图4B的(a)所示为显示悬浮窗口402B的第一屏的用户界面示意图。在图4B的(a)中可以看到,电子设备响应于上述第一操作后,可以在第一屏原来显示的界面401上显示悬浮窗口402B。该悬浮窗口402B可以指示在背屏显示第一应用的第一二维码。该悬浮窗口402B中可以包括该第一应用的图标4021、指示背屏显示二维码的文字4022、该第一应用的名称4023、显示的二维码的类型4024以及下拉控件4025。
上述第一应用的图标4021仅为示例,不构成对本申请实施例的限制。本申请实施例附图中所示的图标均为示例,后面不再赘述。
上述文字4022例如为“背屏亮码”等,本申请实施例对此不做限制。在具体实现中,该文字4022还可以是其它指示背屏显示二维码的文字,本申请实施例对此不做限制。
上述二维码的类型4024可以包括付款码、收款码、乘车码、身份识别码以及未来可能出现的各种二维码等等,本申请实施例对此不做限制。
上述下拉控件4025可以在悬浮窗口402B中显示更多可选择的二维码种类,被选择的二维码可以在背屏显示。关于该下拉控件4025的应用可以参考后面图4D和图4E的相关介绍,此处暂不详述。
图4B的(b)所示为在背屏显示上述第一应用的第一二维码的用户界面示意图。在图4B的(b)中可以看到,该背屏的背景为黑色,显示第一应用的第一二维码的区域403为白色。该区域403中可以包括付款条形码4031、付款二维码4032和指示显示第一二维码数字的文字4033。该文字4033例如可以是“点击可查看第一二维码数字”等,本申请实施例对该文字的具体内容不做限制。示例性地,第一应用的第一二维码的用户界面还可以包括关于该第一二维码的说明404。该说明404例如可以包括该第一应用的图标4041和显示的二维码的名称4042。该二维码的名称4042例如可以是“第一应用第一二维码”等,本申请实施例对该二维码的名称的文字描述不做限制。例如,假设该第一二维码为乘车码,那么,该二维码的名称4042可以是“第一应用乘车码”。再例如,假设该第一二维码为付款码,那么,该二维码的名称4042可以是“第一应用付款码”。后面介绍的二维码的名称同理,不再赘述。
一种可能的实现中,可以参见图4B的(a),电子设备可以响应于用户对该下拉控件4025的点击操作展开悬浮窗口402B,以显示更多可选择的二维码种类。例如,展开后的悬浮窗口402B可以示例性参见图4D。在图4D中,悬浮窗口402B中还包括第二应用的第二二维码的选项和第三应用的乘车码的选项。示例性地,悬浮窗口402B中可以包括该第二应用的图标4027以及指示选择该第二应用的第二二维码的文字4028。该文字4028例如为“使用“第二应用第二二维码””等,本申请实施例对此不做限制。悬浮窗口402B中还包括该第三应用的图标4029以及指示选择该第三应用的乘车码的文字40210。该文字40210例如为“使用“第三应用乘车码””等,本申请实施例对此不做限制。
一种可能的实现中,在图4D所示的展开的悬浮窗口402B中,电子设备可以响应于用户在图标4027和/或文字4028显示区域的点击操作,在背屏显示该第二应用的第二二维码。可以示例性参见图4E,图4E所示为在背屏显示第二应用的第二二维码的用户界面示意图。
在图4E可以看到,该背屏的背景为黑色,显示第二应用的第二二维码的区域407的背景为白色。该区域407中可以包括付款条形码4071、付款二维码4072和指示显示第二二维码数字的文字4073。该文字4073例如可以是“轻触可查看第二二维码数字”等,本申请实施例对该文字的具体内容不做限制。示例性地,显示第二应用的第二二维码的用户界面还可以包括关于该第二二维的说明408。该说明408例如可以包括该第二应用的图标4081和显示的二维码的名称4082。该二维码的名称4082例如可以是“第二应用第二二维码”等,本申请实施例对该二维码的名称的文字描述不做限制。
关于在展开的悬浮窗口402B中选择第三应用的乘车码并在背屏显示的实现,可以参考前述第二应用的第二二维码的相关介绍,此处不赘述。
此外,在上述图4D中还可以看到,展开悬浮窗口402B中还包括上拉控件4026。该上拉控件4026可以收起展开的悬浮窗口402B。示例性地,电子设备可以响应于用户对该上拉控件4026的点击操作,收起展开的悬浮窗口402B。收起后的悬浮窗口402B可以示例性参见图4B的(a)所示。
另一种可能的实现中,在图4D所示的用户界面中,电子设备可以响应于用户在展开的悬浮窗口402B之外的任意位置的点击操作,收起展开的悬浮窗口402B。收起后的悬浮窗口402B可以示例性参见图4B的(a)所示。
可以理解的是,图4D所示的展开的悬浮窗口402B仅为示例,不构成对本申请实施例的限制。在具体实现中,该展开的悬浮窗口402B中包括的可选择的二维码种类可以是其它应用的二维码或者可以是其它二维码类型,本申请实施例对此不做限制。
一种可能的实现中,上述图4B的(b)(或图4E)所示的二维码被扫描成功后,电子设备可以在图4B的(b)所示的区域403(或图4E所示的区域407)中显示“扫码完成”或“支付成功”等信息。以指示二维码已经被成功扫描,可选地,二维码背成功扫描也可以表示完成了相应的操作(例如付款操作等,本申请实施例对此不做限制)。例如,可以参见图4F和图4G所示。该二维码被扫描成功或扫码完成指的是该二维码被其它设备成功扫描。
图4F所示为图4B的(b)所示的二维码被扫描成功后,界面跳转后在背屏显示的用户界面。可以看到,该跳转后的用户界面可以包括第一应用的图标4034、“支付成功”字样4035、付款金额(以100元为例示出)4036、付款方式4037和收款方4038等信息。
图4G所示为图4E所示的二维码被扫描成功后,界面跳转后在背屏显示的用户界面。可以看到,该跳转后的用户界面可以显示“扫码完成”的信息。
可以理解的是,图4F和图4G所示仅为示例,不构成对本申请实施例的限制。在具体实现中,二维码被扫描成功后跳转的界面可以是其它用户界面,本申请实施例对此不做限制。或者,跳转后的用户界面可以显示其它的界面元素,本申请实施例也不做限制。
上述图4B的(b)(或图4E)所示的二维码被扫描成功跳转界面后(例如显示上述图4F和图4G的用户界面后),电子设备可以关闭背屏。该关闭背屏可以是背屏处于黑屏状态或者背屏显示黑色背景,例如可以如图4A的(b)所示。或者该关闭背屏可以是背屏不显示。
另一种可能的实现中,上述图4B的(b)(或图4E)所示的二维码被扫描成功后,电子设备的第一屏可以显示指示付款完成或扫码完成的悬浮窗口。例如可以示例性参见图4H和图4I。
图4H所示为图4B的(b)所示的二维码被扫描成功后,第一屏的用户界面示意图。可以看到,该用户界面中显示了悬浮窗口402C。该悬浮窗口402C中可以包括该第一应用的图标402C1、指示已付款完成的文字402C2、该第一应用的名称402C3和显示的二维码的类型(例如付款码、乘车码等等)402C4。示例性地,该指示已付款完成的文字402C2还可以指示付款的金额为“x元”,如图4H所示。
图4I所示为图4E所示的二维码被扫描成功后,第一屏的用户界面示意图。可以看到,该用户界面中显示了悬浮窗口402D。该悬浮窗口402D中可以包括该第二应用的图标402D1、指示扫码完成的文字402D2、该第二应用的名称402D3和显示的二维码的类型(例如付款码、乘车码等等)402D4。
一种可能的实现中,上述悬浮窗口402C或悬浮窗口402D显示预设时长后消失。该预设时长例如可以是3秒、5秒或8秒等等,本申请实施例对此不做限制。
可以理解的是,上述图4H和图4I所示的悬浮窗口仅为示例,不构成对本申请实施例的限制。在具体实现中,该悬浮窗口可以显示其它的界面元素或内容,本申请实施例对此不做限制。
另一种可能的实现方式中,上述图4B的(b)(或图4E)所示的二维码被扫描成功后,不会在背屏显示扫描成功后的跳转界面(例如不会显示上述图4F和图4G的用户界面)。而是直接变黑屏,例如可以如图4A的(b)所示。
另一种可能的实现中,电子设备在上述图4A所示的情况下,还可以响应于用户在第一屏中的第二操作,在第一屏中显示悬浮窗口402B(例如可以参见图4B的(a)),以及在背屏中显示目标二维码(例如可以参见图4B的(b))。即上述目标操作为该第二操作。该第二操作可以包括对图4A的(a)中可操作控件402A的点击操作(或按住后滑动的操作)和该目标二维码的选择操作。下面示例性介绍。
例如,可以参见图4J。电子设备可以响应于用户对该可操作控件402A的点击操作,在第一屏中显示悬浮窗口402B,如图4C的(a)所示。并且此时,背屏为黑屏,不显示二维码,如图4C的(b)所示。
例如,可以参见图4K。电子设备可以响应于用户对该可操作控件402A按住后滑动的操作,在第一屏中显示悬浮窗口402B,如图4C的(a)所示。并且此时,背屏为黑屏,不显示二维码,如图4C的(b)所示。该滑动的方向例如可以是图4K中406所示的方向。
在上述图4C的(a)所示的用户界面中,电子设备可以响应于用户对第一应用的第一二维码的选择操作,在背屏显示该第一应用的第一二维码。背屏显示该第一应用的第一二维码的用户界面可以示例性参见图4B的(b)所示。示例性地,该选择操作例如可以是在用户在图标4021、第一应用的名称4023或显示的二维码的类型4024所在位置的点击操作。
另一种可能的实现方式中,若用户想选择其它二维码在背屏显示,那么,可以参考前述关于图4D和图4E的相关介绍,此处不赘述。
另一种可能的实现中,上述背屏显示的二维码被扫描成功后,电子设备可以关闭背屏。具体实现可以参考前述关于图4F至图4I的相关介绍,此处不赘述。
一种可能的实现中,在上述图4B的(a)、图4C的(a)或图4D所示的用户界面中,若经过了预设时长电子设备没有通过悬浮窗口402B接收到用户的操作,例如用户在该预设时长内都没有点击或触摸该悬浮窗口402B的任何位置。那么,电子设备可以将该悬浮窗口402B隐藏。隐藏后的用户界面可以示例性参见图4A的(a)所示。示例性地,该预设时长例如可以是3秒、5秒或8秒等等,本申请实施例对此不做限制。
一种可能的实现中,若电子设备处于展开状态,或者处于锁屏状态,或者处于灭屏的状态,上述第一屏不会显示上述可操作控件402A,也不会显示悬浮窗口402B。并且,即使电子设备接收到来自用户的第一操作,也不会做出响应。即不会在第二屏显示上述目标二维码。此外,由于第一屏不会显示上述可操作控件402A,也不会显示悬浮窗口402B,因此电子设备无法接收到上述第二操作。即电子设备处于展开状态,或者处于锁屏状态,或者处于灭屏的状态时,不会触发上述目标二维码的显示。
下面进一步示例性介绍本申请实施例提供的显示二维码的方法的实现过程。下面的实现过程主要以上述目标操作为上述第一操作为例介绍。
一种可能的实现中,基于前面的介绍可知,电子设备在折叠状态、未锁屏且亮屏的情况下,才会显示上述介绍的用户界面。因此,电子设备可以在系统服务(system server)中注册监听器(listener)来监听屏幕折叠状态,注册广播接收者(broadcast receiver)来接收亮灭屏状态,并且可以查询屏幕的解锁状态。电子设备获取到上述具体的屏幕折叠状态、具体的屏幕亮灭状态以及具体的屏幕解锁状态之后,可以基于这些状态判断是否注册目标事件监听器。该目标事件即为上述目标操作的输入事件。该目标事件监听器可以监听该目标事件的发生。该目标事件发生后才触发电子设备执行显示上述悬浮窗口和/或目标二维码的流程。下面结合图5和图6示例性介绍具体的实现流程。首先参见图6所示的流程,图6所示的流程可以包括但不限于如下步骤。
601、在屏幕处于折叠状态、未锁屏且亮屏的情况下,双击控制服务向手势服务注册目标事件监听器。
示例性地,上述手势服务(Motion services)也是上述系统服务进程中的一个子服务线程。手势服务可以识别作用于电子设备的手势操作。
在具体实现中,上述双击控制服务可以获取到电子设备具体的屏幕折叠状态、具体的屏幕亮灭状态以及具体的屏幕解锁状态。示例性地,例如可以通过下面图5所示的流程获得,具体参见后面图5的相关介绍,此处暂不详述。
上述双击控制服务获取到上述具体的屏幕折叠状态,可以通过比较判断该具体的屏幕折叠状态是否为折叠状态。上述双击控制服务获取到上述具体的屏幕亮灭状态后,可以通过比较判断该具体的屏幕亮灭状态是否为亮屏状态。上述双击控制服务获取到上述具体的屏幕解锁状态后,可以通过比较判断该具体的屏幕解锁状态是否为解锁状态,即是否为未锁屏状态。
一种可能的实现中,在屏幕处于展开状态,或者处于锁屏状态,或者处于灭屏的状态情况下,双击控制服务不会向手势服务注册目标事件监听器。或者,在屏幕处于展开状态,或者处于锁屏状态,或者处于灭屏的状态情况下,若已经注册有目标事件监听器。则双击控制服务可以向手势服务请求注销已注册目标事件监听器。示例性地,双击控制服务可以通过调用注销装置监听器函数unregisterDeviceListner()来实现已注册目标事件监听器的注销。
一种可能的实现中,在屏幕处于折叠状态、未锁屏且亮屏的情况下,双击控制服务可以向手势服务注册目标事件监听器。示例性地,上述注册目标事件监听器可以是通过注册装置监听器函数registerDeviceListner()来实现的。示例性地,若在屏幕处于折叠状态、未锁屏且亮屏的情况下,已经注册过该目标事件监听器,则不会重复注册。示例性地,可以通过查询手势服务中的监听器列表是否包括该目标事件监听器的信息来判断。若包括,则表明已经注册过该目标事件监听器。若不包括,则表明没有注册过该目标事件监听器。
示例性地,在具体实现中,可以是在手势服务中的设备管理服务(hwExtDeviceManage)注册或注销目标事件监听器。该设备管理服务可以获取传感器检测到的手势操作的输入事件。
示例性地,上述屏幕折叠状态、屏幕亮灭状态和屏幕解锁状态中,只要有一个发生变化,均会触发上述双击控制服务判断屏幕是否满足折叠状态、未锁屏且亮屏的情况。进而判断是否注册或注销上述目标事件监听器。
602、加速度传感器驱动向手势服务发送目标事件。
在双击控制服务向手势服务注册了目标事件监听器之后,若上述目标操作发生,电子设备的加速度传感器可以检测到该目标操作的输入事件。示例性地,具体实现中,系统调用传感器驱动使得硬件加速度传感器首先接收到该目标操作的输入事件,然后系统调用硬件抽象层的加速度传感器接口通过预设算法可以识别出该输入事件为目标事件。该预设算法例如可以是背屏敲击(TapTap)算法等等,本申请实施例对此不做限制。
上述硬件抽象层的加速度传感器接口识别到上述目标事件,可以将该目标事件发送给手势服务。示例性地,在具体实现中,硬件抽象层的加速度传感器接口是向手势服务中的设备管理服务发送该目标事件。
603、手势服务调用目标事件监听器向双击控制服务返回目标事件。
手势服务接收到该目标事件后,可以通过上述设备管理服务调用目标事件监听器,使得该调用目标事件监听器中的方法被执行后将目标事件返回给双击控制服务。
604、双击控制服务基于目标事件启动背屏服务。
双击控制服务接收到上述目标事件后,可以启动背屏服务。该背屏服务是本申请实施例提供的一种应用程序,以实现在背屏显示上述目标二维码。
605、在背屏服务启动后,拉起目标应用。
在拉起目标应用后,可以在背屏显示对应的二维码。该实现过程可以示例性参见后面图7或图8的相关介绍,此处暂不详述。
示例性地,该目标应用可以是预先设置的默认在背屏显示的二维码对应的应用。或者,另一种可能的实现中,该目标应用可以是用户在上述悬浮窗口选择在背屏显示的二维码对应的应用。
示例性地,下面结合图5介绍上述双击控制服务获取到电子设备具体的屏幕折叠状态、具体的屏幕亮灭状态以及具体的屏幕解锁状态的过程。可以参见图5所示的流程示意图。图5所示的流程可以包括但不限于如下步骤。
501、双击控制服务向折叠屏管理服务注册屏幕折叠状态监听器。
示例性地,该双击控制服务是本申请实施例中在系统服务进程中新增的一个子服务线程。该双击控制服务可以注册屏幕折叠状态监听器以及注册亮灭屏状态监听器,以获取监听器监听的状态数据,和/或者可以查询屏幕的解锁状态。其中,屏幕折叠状态监听器可以监听屏幕是处于折叠状态还是处于展开状态。亮灭屏状态监听器可以监听屏幕是处于亮屏状态还是处于灭屏状态。
注册即是向事件源对象登记监听器的信息,使得监听的事件发生时,事件源对象可以在已经注册的监听器列表中找到该监听器并对应调用它的方法来处理。
该折叠屏管理(fold screen manager)服务也是该系统服务进程中的一个子服务线程。该折叠屏管理服务可以管理电子设备的显示屏的折叠状态或展开状态。
在具体实现中,电子设备在开机启动的过程中,系统服务进程会执行启动其它服务(startOtherServices)线程来启动各种其它的系统子服务。在本申请实施例中,该startOtherServices线程可以拉起即启动上述双击控制服务。该双击控制服务启动后,可以向折叠屏管理服务注册屏幕折叠状态监听器。以使得电子设备的屏幕由折叠状态切换为展开状态时,和/或电子设备的屏幕由展开状态切换为折叠状态时,可以向双击控制服务返回具体的状态信息。
示例性地,上述双击控制服务可以是通过注册折叠状态函数registerfoldablestate()来向折叠屏管理服务注册屏幕折叠状态监听器的。
502、双击控制服务向应用活动管理服务注册亮灭屏状态的广播接收者。
示例性地,应用活动管理服务(activity manager service,AMS)主要负责管理所有应用程序的活动任务和生命周期。当一个应用程序被打开时,AMS会启动该应用程序的进程,并给应用程序分配处理器资源和内存。
在本申请实施例中,上述双击控制服务启动后,可以向AMS注册亮灭屏状态的广播接收者。以使得电子设备的屏幕由亮屏状态切换为灭屏状态时,和/或电子设备的屏幕由灭屏状态切换为亮屏状态时,可以向双击控制服务返回具体的亮灭屏状态信息。
示例性地,上述灭屏状态的广播接收者可以是实现为屏幕变化接收者(Screenchangereceiver)等。
503、双击控制服务向应用活动管理服务注册解锁状态的广播接收者。
在具体实现中,屏幕的解锁状态可以由系统用户界面服务(system userinterface,systemUI)广播。示例性地,系统用户界面服务(system user interface,systemUI)也是上述系统服务进程中的一个子服务线程。系统用户界面服务可以实现通知消息提示音和系统状态栏呈现、导航栏呈现、展示系统或应用通知内容、锁屏、控制管理分屏的分割线以及提供对于画中画模式的管理等等。
应用活动管理服务可以接收到上述该解锁状态的广播。因此,上述双击控制服务启动后,可以向应用活动管理服务注册解锁状态的广播接收者。示例性地,该广播接收者可以在应用活动管理服务接收到来自系统用户界面服务的广播信息后被调用,以此来向双击控制服务返回屏幕的解锁状态。
504、折叠屏管理服务调用折叠状态监听器向双击控制服务返回屏幕折叠状态。
具体实现中,双击控制服务在折叠屏管理服务注册了屏幕折叠状态监听器之后,若电子设备的屏幕由折叠状态切换为展开状态,和/或电子设备的屏幕由展开状态切换为折叠状态,折叠屏管理服务调用折叠状态监听器向双击控制服务返回具体的屏幕折叠状态。
505、电源管理服务广播屏幕亮灭状态。
示例性地,电源管理服务(power manager service,PMS)也是上述系统服务进程中的一个子服务线程。该电源管理服务负责系统的电源管理,例如负责屏幕点亮、熄灭屏幕或进入屏保等。
在具体实现中,注册了接收该电源管理服务广播的屏幕亮灭状态的广播接收者的服务,可以接收到该广播的屏幕亮灭状态。上述应用活动管理服务中注册了亮灭屏状态的广播接收者,因此,应用活动管理服务可以接收到该广播的屏幕亮灭状态。
506、应用活动管理服务向双击控制服务返回屏幕亮灭状态。
具体实现中,由于上述亮灭屏状态的广播接收者是上述双击控制服务向应用活动管理服务注册的。上述应用活动管理服务接收到来自电源管理服务的屏幕亮灭状态广播后,可以将该屏幕亮灭状态传给该广播接收者。该广播接收者再将该具体的屏幕亮灭状态传给上述双击控制服务。
507、系统用户界面服务广播屏幕解锁状态。
508、应用活动管理服务向双击控制服务返回屏幕解锁状态。
具体实现中,系统用户界面服务可以广播具体的屏幕解锁状态。AMS接收到该广播的屏幕解锁状态后,可以将该解锁状态传给解锁状态的广播接收者。该广播接收者可以将该具体的屏幕解锁状态发送给上述双击控制服务。
可以理解的是,上述步骤501至步骤503的先后执行顺序不做限制,上述步骤504至步骤508的先后执行顺序不做限制。此外,上述双击控制服务获取屏幕折叠状态、屏幕亮灭状态以及屏幕解锁状态的介绍仅为示例。在具体实现中,该双击控制服务还可以通过回调函数或者其它方式获取到这些状态信息,本申请实施例对此不做限制。
示例性地,下面结合图7和图8示例性介绍上述拉起目标应用以实现在背屏显示对应的二维码的实现过程。
一种可能的实现中,可以通过图7所示的流程拉起目标应用以实现在背屏显示对应的二维码。图7所示流程包括但不限于如下步骤。
701、背屏服务通过调用启动应用活动(startActivity)函数向应用活动管理服务发送拉起目标二维码的消息。
示例性地,上述目标二维码即为上述默认在背屏显示的二维码或者被用户选择在背屏显示的二维码。可以通过启动一个应用活动(Activity)来显示该目标二维码的用户界面。
上述向AMS发送的消息可以是通过意图(Intent)参数携带的。该Intent参数便指定了要启动的Activity(简称为目标Activity),即该Intent参数包括了对该目标Activity的数据描述。AMS可以通过解析这个Intent参数创建对应的应用活动记录(ActivityRecord),然后才能继续后续启动Activity的过程。
此外,示例性地,在本申请实施例中,上述目标二维码要求在电子设备的背屏显示。上述背屏服务向AMS发送的消息中还携带了发送者即该背屏服务的标识信息(例如应用名称或预设的唯一编号等)。因此,上述AMS接收到上述消息后,可以基于该消息中发送者的标识信息判断是否是背屏服务发送的消息。若是,则调整上述目标Activity关联的显示区域,将该目标Activity的显示区域设置为背屏。从而使得后续基于该目标Activity创建窗口来显示上述目标二维码时,该窗口的显示区域为背屏。
702、应用活动管理服务基于该消息向目标应用发送启动目标Activity的通知,该目标Activity可以显示目标二维码。
上述AMS基于接收的消息创建了ActivityRecord后,可以先判断该ActivityRecord指示的应用进程(即上述目标应用进程)是否存在。若不存在,可以先启动该目标应用进程,然后向该目标应用发送启动上述目标Activity的通知。若该目标应用进程存在,则直接向该目标应用发送启动上述目标Activity的通知。
703、目标应用基于该通知启动目标Activity。
上述目标应用接收到AMS的通知后,创建了对应的应用活动线程(ActivityThread),从而启动了上述目标Activity。
示例性地,上述应用活动线程可以通过调用onCreate()和onResume()等函数来实现上述目标Activity的启动。
704、目标应用通过该目标Activity创建第一窗口的视图树并添加到窗口管理服务。
示例性地,窗口管理服务(window manager service,WMS)也是上述系统服务进程中的一个子服务线程。该窗口管理服务至少可以实现窗口管理、窗口动画或协助输入系统接收输入事件等功能。
上述启动了目标Activity之后,可以通过该目标Activity创建上述第一窗口的视图(view)树并将该视图树添加到WMS。该第一窗口可以显示上述目标二维码。示例地,该第一窗口显示的是目标应用的用户界面,该用户界面包括该目标二维码。例如,若该目标二维码为某个应用的付款码,那么,该第一窗口显示的则是该应用的付款码界面。再例如,若该目标二维码为某个应用的乘车码,那么,该第一窗口显示的则是该应用的乘车码界面。可以理解,此处仅为示例,不构成对本申请实施例的限制。
示例性地,上述将第一窗口的视图树添加到窗口管理服务可以是通过调用setview()函数实现的。示例性地,setview()函数可以调用Addwindow()函数来将该第一窗口的视图树添加到窗口管理服务。此外,setview()函数还可以调用requestlayout()函数来对该第一窗口进行布局。
705、窗口管理服务向界面映射服务申请垂直同期Vsync信号。
示例性地,上述界面映射服务(Surfaceflinger)也是系统服务。可以协助和配合WMS实现窗口的管理。
上述将视图树添加到WMS后,WMS可以向界面映射服务申请屏幕刷新的垂直同期(Vsync)信号。VSync信号可以将每秒的帧数(frames per second,FPS)即帧率和屏幕的刷新率同步起来,目的是避免出现画面“撕裂”的现象。如果没有VSync信号,当渲染帧数据比较快时,屏幕的刷新跟不上,可能就会出现当前正在显示某一帧,另外一帧又触发在屏幕上显示,就会出现画面“撕裂”的现象。
706、界面映射服务向目标应用返回Vsync信号的通知。
在下一个VSync信号到来时,界面映射服务向目标应用返回Vsync信号的通知。
707、目标应用响应于该Vsync信号调用渲染模块绘制第一窗口。
目标应用接收到通知后,可以调用渲染模块例如调用ViewRootlmpl#performTraversals()函数进行第一窗口的绘制。示例性地,该performTraversals()函数可以调用performdraw()等函数进行第一窗口的绘制。
708、目标应用向界面映射服务发送绘制的第一窗口。
目标应用获得绘制后的第一窗口后,可以将该第一窗口发送给界面映射服务。
709、界面映射服务将第一窗口的内容合成图形。
界面映射服务接收到上述绘制后的第一窗口后,可以将其进行图形合成。该合成的图形包括上述目标二维码。
7010、界面映射服务向显示管理服务发送合成的图形。
示例性地,上述显示管理(DisplayManager)服务也是一个系统服务,可以管理窗口显示的生命周期。
7011、显示管理服务将合成的图形显示到背屏。
上述步骤701中已经将上述目标Activity的显示区域设置为背屏。上述第一窗口为该目标Activity的窗口,因此显示管理服务将上述基于第一窗口合成的图形显示到背屏。从而可以在背屏显示上述目标二维码。
另一种可能的实现中,可以通过图8所示的流程拉起目标应用以在背屏显示对应的二维码。图8所示流程包括但不限于如下步骤。
801、背屏服务通过调用目标应用的SDK向目标应用发送拉起目标二维码的消息。
示例性地,软件开发工具包(software development kit,SDK)是为软件包、软件框架、硬件平台或操作系统等创建应用软件的开发工具的集合。SDK可以的应用程序所使用的SDK。SDK通过编译器、调试器或软件框架等来促进应用程序的创建。或者,SDK可以为某个程序设计语言提供应用程序接口的一些文件,或者也可能包括能与某种嵌入式系统通讯的复杂的硬件。在本申请实施例中,可以通过调用上述目标应用的SDK来拉起上述目标二维码。
示例性地,上述背屏服务可以调用上述目标应用的SDK,然后通过该SDK的接口向目标应用发送拉起目标二维码的消息。
802、目标应用通过调用startActivity函数向AMS发送拉起目标二维码的消息。
上述目标应用接收到来自背屏服务的消息后,可以响应于该消息调用startActivity函数向AMS发送拉起目标二维码的消息。具体实现可以参考前述图7中步骤701的介绍,此处不赘述。
803、AMS基于该消息向目标应用发送启动目标activity的通知。
该目标activity可以显示目标二维码。
该步骤的实现可以参考上述图7中步骤702的介绍,此处不赘述。
804、基于该通知与相关线程和模块交互显示上述第一窗口。
该步骤的实现可以参考上述图7中步骤703至7011的介绍,此处不赘述。
可以理解的是,上述图7和图8所示的拉起目标应用以在背屏显示对应的二维码的实现过程仅为示例,不构成对本申请实施例的限制。
另一种可能的实现中,若电子设备响应于用户的选择操作更换背屏显示的二维码,例如参见上述图4D和图4E的介绍。那么,同样可以参考上述图7或图8的流程拉起被选择的二维码的应用,以实现该二维码的显示,此处不赘述。
另一种可能的实现中,电子设备不用监听上述目标事件,只要判断出电子设备在折叠状态、未锁屏且亮屏的情况下,就在第一屏显示上述悬浮窗口以及在背屏显示上述目标二维码。这种实现方式中,电子设备执行上述图5所示的流程后,上述双击控制服务即可获取到上述具体的屏幕折叠状态、具体的屏幕亮灭状态以及具体的屏幕解锁状态。然后,若基于这些状态判断出电子设备处于折叠状态、未锁屏且亮屏,那么,即可在第一屏显示上述悬浮窗口。并且,双击控制服务会启动背屏服务,以使得背屏服务拉起上述目标应用以在背屏显示对应的二维码。具体可以参考前述图6中步骤605,以及参考上述图7或图8的相关介绍,此处不赘述。
一种可能的实现中,电子设备在背屏显示上述目标二维码时,背屏的背景为黑色。将背屏的背景显示为黑色的实现流程可以参考图9。图9所示的流程可以包括但不限于如下步骤。
901、背屏服务创建第二窗口的视图树并添加到WMS。
具体实现中,可以通过该背屏服务创建上述第二窗口的视图树并将该视图树添加到WMS。该第二窗口在背屏显示,且该第二窗口为黑色背景。
示例性地,该第二窗口可以是一个弹窗(Dialog)。背屏服务创建该第二窗口的时候默认的显示区域即为背屏。然后,可以通过背景设置函数来将该第二窗口的背景设置为黑色,将黑色背景的第二窗口显示在背屏时,则背屏的背景也是黑色。示例性地,该背景设置函数例如可以是setBackgroundDrawable()函数或者setBackground(Drawablebackground)函数等等,本申请实施例对此不做限制。
902、背屏服务向界面映射服务申请垂直同期Vsync信号。
上述将第二窗口的视图树添加到WMS后,WMS可以向界面映射服务申请屏幕刷新的Vsync信号。
903、界面映射服务向背屏服务返回Vsync信号的通知。
在下一个VSync信号到来时,界面映射服务向背屏服务返回Vsync信号的通知。
904、背屏服务响应于该Vsync信号调用渲染模块绘制第二窗口。
背屏服务接收到通知后,可以调用渲染模块例如调用ViewRootlmpl#performTraversals()方法进行第二窗口的绘制。
905、背屏服务向界面映射服务发送绘制的第二窗口。
背屏服务获得绘制后的第二窗口后,可以将该第二窗口发送给界面映射服务。
906、界面映射服务将第二窗口的内容合成图形。
界面映射服务接收到上述绘制后的第二窗口后,可以将其进行图形合成。
907、界面映射服务向显示管理服务发送合成的图形。
界面映射服务将第二窗口进行图形合成后,发送给显示管理服务送显。
908、显示管理服务将合成的图形显示到背屏。
显示管理服务将基于该第二窗口合成的图形显示到背屏。使得背屏的背景呈现为黑色。
一种可能的实现中,若要在背屏呈现出例如上述图4B的(b)或图4E所示的用户界面,可以将上述第二窗口的预设区域设置为透明区域(例如图4B的(b)中所示的区域403或图4E中所示的区域407)。在该透明区域中显示上述目标二维码。此外,还可以在第二窗口中指定的位置设置对应的应用图标(例如图4B的(b)中所示的第一应用的图标4041或图4E中所示的第二应用的图标4081)和目标二维码的名称(例如图4B的(b)中所示的二维码的名称4042或图4E中所示的二维码的名称4082)。
示例性地,上述第二窗口的预设区域的位置和大小,以及第二窗口中显示应用图标和二维码的名称的指定位置和大小都是预先设置好的。示例性地,可以通过可扩展标记语言(extensible markup language,XML)布局文件等方式来设置,本申请实施例对此不做限制。或者,另一种可能的实现中,该第二窗口的预设区域的位置和大小可以不预先设置。可以基于要显示的目标二维码的位置和大小,动态地确定二维码的显示区域,再基于该显示区域确定该透明的预设区域的位置和大小。
示例性的,在具体实现中,电子设备可以先正常绘制上述黑色背景的第二窗口,然后,可以通过调用设置透明区域的函数(例如srcPaint.setXfermode(newPorterDuffXfermode(PorterDuff.Mode.SRC_OUT)函数等)来将上述预设区域设置为透明区域。此外,上述布局文件中描述了在指定位置显示的应用图标和二维码名称。因此,可以基于该布局文件在该指定的位置布局显示应用图标和二维码的名称。
示例性地,在具体实现中,上述通过图7、图8或其它可能的实现方式在背屏显示的上述第一窗口,被上述第二窗口覆盖住。由于第二窗口的预设区域为透明区域且背景为不透明的黑色,而该透明区域刚好是第一窗口中目标二维码的显示区域。此外,第二窗口中指定的位置布局了应用图标和二维码的名称。那么在背屏上看到的用户界面即为例如上述图4B的(b)或图4E所示的用户界面。示例性地,可以通过图层的设置使得第一窗口的图层位于第二窗口的图层下面,进而呈现出第一窗口被第二窗口覆盖住的显示效果。
另一种可能的实现中,若要在背屏呈现出例如上述图4B的(b)或图4E所示的用户界面,还可以将第一窗口的中的目标二维码截图出来,将截图后的目标二维码布局到上述第二窗口的预设区域中显示。这种实现方式中可以不将该预设区域设置为透明区域。
可以理解的是,上述在背屏呈现出例如上述图4B的(b)或图4E所示的用户界面的实现方式仅为示例,不构成对本申请实施例的限制。
一种可能的实现中,若上述背屏显示的目标二维码已经被扫描成功来完成对应的付款等操作,那么电子设备可以关闭背屏。关闭背屏例如电子设备可以在背屏退出上述显示目标二维码的用户界面并黑屏,或者背屏不显示任何界面等。下面结合图10示例性介绍关闭背屏的交互流程。图10所示的流程可以包括但不限于如下步骤。
1001、在扫码完成后,背屏服务在第一屏显示悬浮窗口提示用户。
一种可能的实施方式中,上述背屏显示的目标二维码被扫描完成对应的操作后,上述第一窗口显示的界面会跳转。跳转后背屏中第二窗口的预设区域呈现出来的不再是该目标二维码(例如参见上述图4F和图4G的用户界面)。背屏服务可以检测到这一变化,从而获知已经扫码完成并完成对应的付款等操作,进而触发关闭背屏。
示例性的,背屏服务可以通过截取背屏显示的用户界面的图片,然后识别该图片。若该图片中未识别到二维码则确定已经扫码完成。或者,示例性地,背屏服务可以检测背屏中该预设区域显示的文字等元素,若检测到“支付成功”或者“扫码完成”等文字,则可以确定已经扫码完成。或者,示例性地,背屏服务可以调用系统中已有的智慧能力(例如安卓无障碍框架功能等)来识别出扫码完成的用户界面,进而确定扫码完成。
另一种可能的实现方式中,背屏服务可以预先设置背屏显示目标二维码的时长。若在背屏显示某一个目标二维码的时间达到该预设时长,那么,可以确定已经扫码完成并完成对应的付款等操作,进而触发关闭背屏。示例性地,该预设时长例如可以是10秒或20秒等等,本申请实施例对此不做限制。
另一种可能的实现中,可以通过捆绑服务(bundleservice)实现背屏服务和上述目标应用的交互通信。上述背屏显示的目标二维码被扫描完成对应的操作后,该目标应用可以感知。然后,该目标应用可以将该扫码完成的信息通知给背屏服务。以触发背屏服务关闭背屏。
上述背屏服务获知扫码完成后,可以在主屏显示一个悬浮窗口以指示已经扫码完成。该悬浮窗口例如可以参见上述图4H所示的悬浮窗口402C或图4I所示的悬浮窗口402D。示例性地,背屏服务可以调用窗口管理服务WMS来实现该悬浮窗口的显示。背屏服务在第一屏显示该悬浮窗口的实现过程,可以示例性参考上述目标应用在背屏显示第一窗口的实现过程。所不同的是显示区域、显示位置和窗口中的界面元素等属性的设置,本申请实施例对此不再赘述。
1002、背屏服务将背屏显示的第二窗口的预设区域设置为黑色。
基于前面的介绍可知,该第二窗口是一个至于上述显示目标二维码的第一窗口上层的Dialog。为了将该下层的目标二维码显示出来,将该第二窗口的预设区域设置为透明区域。在上述背屏服务获知扫码完成后,则表明无需再继续显示下层的第一窗口。因此,可以将上层的第二窗口的背景全部设置为黑色。即把该预设区域的背景也设置为黑色。这样就将第一窗口完全覆盖住,用户看到的背屏是黑色的,例如上述图4A的(b)所示。
1003、背屏服务调用窗口管理服务移除在背屏显示的任务。
示例性地,背屏服务将上述第二窗口的背景全部设置为黑色之后。可选的,在主屏显示的指示扫码完成的悬浮窗口消失后(基于前面的介绍可知,经过预设时长后会自动消息)。背屏服务可以调用窗口管理服务移除在背屏显示的任务。即移除在背屏显示的窗口。
示例性地,背屏服务可以调用removeAllTaskForDisplay()函数,该函数又调用窗口管理服务来移除在背屏显示的任务。该removeAllTaskForDisplay()函数的入参为背屏的标识符(displayID)。即通过该displayID指示移除的是背屏显示的任务。
1004、窗口管理服务移除在背屏显示的任务。
具体实现中,窗口管理服务响应于上述调用,根据上述displayID找到背屏的对象实例displayContent。然后,遍历该displayContent中所有的任务。并且在遍历的过程中调用removeImmediately()函数移除被遍历到的任务。遍历完成后,背屏显示的任务也移除完成。
1005、窗口管理服务向背屏服务返回成功移除的结果。
完成背屏显示的任务的移除之后,窗口管理服务可以向背屏服务返回成功移除的结果。
1006、背屏服务关闭第二窗口。
在具体实现中,由于背屏显示的任务即窗口全部移除了,因此可以关闭该覆盖在上层的第二窗口。示例性地,可以调用presentation.dismiss()函数来关闭该第二窗口。
由于背屏显示的任务已全部移除,关闭第二窗口后,背屏则没有任何窗口显示,处于黑屏状态。
1007、背屏服务向双击控制服务发送关闭背屏的消息。
背屏服务关闭上诉第二窗口后,可以向上述双击控制服务发送关闭背屏的消息。以告知双击控制服务无需继续在背屏显示。
1008、双击控制服务解除与背屏服务的绑定。
双击控制服务可以响应于上述关闭背屏的消息,解除与背屏服务的绑定关系。示例性地,双击控制服务可以通过ubindservice()函数解除与背屏服务的绑定关系。
可以理解的是,上述图10所示过程仅为示例,不构成对本申请实施例的限制。
综上所述,相比于现有技术,本申请实施例提供的显示二维码的方法可以在不中断电子设备的第一屏当前正在进行的任务的情况下,快速在背屏拉起需要使用的二维码来显示,减少了显示相应二维码的操作步骤,提高了显示二维码的效率以及用户体验。
本申请实施例还提供了一种电子设备,电子设备包括一个或多个处理器和一个或多个存储器;其中,一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行上述实施例描述的方法。
本申请实施例还提供了一种芯片系统,该芯片系统应用于电子设备,该芯片系统包括一个或多个处理器,该处理器用于调用计算机指令以使得所述电子设备执行上述实施例描述的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述实施例描述的方法。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当指令在电子设备上运行时,使得电子设备执行上述实施例描述的方法。
可以理解的是,本申请的各实施方式可以任意进行组合,以实现不同的技术效果。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid StateDisk)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
总之,以上所述仅为本发明技术方案的实施例,并非用于限定本发明的保护范围。凡根据本发明的揭露,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (16)

1.一种显示二维码方法,其特征在于,应用于电子设备,所述电子设备包括显示屏,所述显示屏包括第一屏和第二屏,在所述显示屏处于折叠状态时,所述第一屏和所述第二屏的显示方向相背,在所述显示屏处于展开状态时,所述第一屏和所述第二屏的显示方向相同,所述第一屏和所述第二屏是所述显示屏的两个不同的显示区域;
所述显示屏处于折叠状态,在所述第一屏显示第一用户界面,所述第一用户界面包括第一应用的界面;
在第一时间点接收用户的第一操作,响应于所述第一操作在所述第二屏显示第二应用的第一二维码;在所述第二屏显示所述第一二维码的过程中,在所述第一屏显示所述第一用户界面;
在所述第一二维码被扫描后,关闭所述第二屏;
所述显示屏处于展开状态,在所述显示屏显示第一应用的第二用户界面,所述第二用户界面是将所述第一用户界面适配了展开状态以后的界面;
在第二时间点,接收用户的第一操作,在所述第二屏不显示所述第二应用的第一二维码。
2.根据权利要求1所述的方法,其特征在于,所述显示屏处于折叠状态,所述第一屏处于锁屏状态或灭屏状态;
在第三时间点,接收用户的第一操作,基于所述第一屏处于锁屏状态或灭屏状态,不显示所述第二应用的第一二维码。
3.根据权利要求1或2所述的方法,其特征在于,所述第一操作包含在所述第一屏的背面敲击两次的操作。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一屏显示第一用户界面之前,所述方法还包括:
所述电子设备处于展开态,所述电子设备显示所述第二用户界面,所述第二用户界面不包括第一悬浮窗口;
所述第一屏显示第一用户界面,包括:
在所述电子设备由所述展开态变为折叠态后,所述电子设备在第一屏显示所述第一用户界面,所述第一用户界面包括所述第一悬浮窗口,所述第一悬浮窗口中包括所述第一二维码的第一界面元素。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述显示屏处于折叠状态时,所述第一用户界面接收用户对所述第一界面元素的第二操作;
响应于所述第二操作在所述第二屏显示所述第一二维码。
6.根据权利要求4或5所述的方法,其特征在于,所述第一界面元素包括所述第二应用的图标、名称以及所述第一二维码的类型中的至少一项。
7.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
响应于对所述第一悬浮窗口的下拉控件的操作,展开所述第一悬浮窗口并显示第三应用的第二二维码的第二界面元素;
接收用户对所述第二界面元素的第三操作,响应于所述第三操作在所述第二屏显示所述第二二维码。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述在所述第一二维码被扫描后,还包括:
在所述第一屏显示第二悬浮窗口,所述第二悬浮窗口中包括所述第一二维码被扫描完成的指示信息。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述接收用户的第一操作,响应于所述第一操作在所述第二屏显示第二应用的第一二维码之前,还包括:
获取所述显示屏的第一状态信息;
在所述第一状态信息指示所述显示屏处于折叠状态、未锁屏且亮屏的情况下,监听所述第一操作的输入事件。
10.根据权利要求1-8任一项所述的方法,其特征在于,所述接收用户的所述第一操作,所述显示屏未显示所述第一二维码之前,还包括:
获取所述显示屏的第二状态信息;
在所述第二状态信息指示所述显示屏处于目标状态的情况下,取消所述第一操作的输入事件的监听;所述目标状态包括所述显示屏处于展开状态、锁屏状态或灭屏状态。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述响应于所述第一操作在所述第二屏显示第二应用的第一二维码,包括:
响应于所述第一操作在所述第二屏显示目标窗口和第三用户界面;所述第三用户界面为所述第二应用中包含所述第一二维码的用户界面,所述目标窗口包括第一区域和第二区域,所述第一区域为透明区域,所述第二区域为黑色区域,所述目标窗口覆盖所述第三用户界面,所述第一二维码和所述第一区域位置对应。
12.根据权利要求11所述的方法,其特征在于,所述关闭所述第二屏,包括:
将所述第一区域设置为黑色;
移除在所述第二屏显示的任务窗口,所述任务窗口包括所述第三用户界面;
关闭所述目标窗口。
13.一种显示二维码的方法,其特征在于,应用于电子设备,所述电子设备包括显示屏,所述显示屏包括第一屏和第二屏,在所述显示屏处于折叠状态时,所述第一屏和所述第二屏的显示方向相背,在所述显示屏处于展开状态时,所述第一屏和所述第二屏的显示方向相同,所述第一屏和所述第二屏是所述显示屏的两个不同的显示区域;
所述显示屏处于折叠状态,在所述第一屏显示第一应用的用户界面和第一悬浮窗口,所述第一悬浮窗口中包括第二应用的第一二维码的第一界面元素;
在第一时间点接收用户对所述第一界面元素的选择操作,响应于所述选择操作在所述第二屏显示所述第一二维码;在所述第二屏显示所述第一二维码的过程中,在所述第一屏显示所述第一应用的用户界面;在所述第一二维码被扫描后,关闭所述第二屏;
在所述显示屏处于目标状态时,所述显示屏未显示所述第一悬浮窗口,所述目标状态包括所述显示屏处于展开状态、锁屏状态或灭屏状态。
14.一种电子设备,其特征在于,包括:显示屏,一个或多个处理器,以及一个或多个存储器;所述一个或多个处理器与所述显示屏,以及所述一个或多个存储器耦合;所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述电子设备执行如权利要求1-12中的任一项所述的方法;或者,使得所述电子设备执行如权利要求13所述的方法。
15.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1-12中任一项所述的方法;或者,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求13所述的方法。
16.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-12中任一项所述的方法;或者,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求13所述的方法。
CN202311052022.8A 2023-08-18 2023-08-18 显示二维码的方法及相关电子设备 Pending CN119493500A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202311052022.8A CN119493500A (zh) 2023-08-18 2023-08-18 显示二维码的方法及相关电子设备
PCT/CN2024/079219 WO2025039501A1 (zh) 2023-08-18 2024-02-29 显示二维码的方法及相关电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311052022.8A CN119493500A (zh) 2023-08-18 2023-08-18 显示二维码的方法及相关电子设备

Publications (1)

Publication Number Publication Date
CN119493500A true CN119493500A (zh) 2025-02-21

Family

ID=94623973

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311052022.8A Pending CN119493500A (zh) 2023-08-18 2023-08-18 显示二维码的方法及相关电子设备

Country Status (2)

Country Link
CN (1) CN119493500A (zh)
WO (1) WO2025039501A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180181257A1 (en) * 2016-12-27 2018-06-28 Industrial Technology Research Institute Method for user interface of foldable display apparatus
CN114710575B (zh) * 2019-01-11 2023-06-16 华为技术有限公司 显示方法及相关装置
CN110045939A (zh) * 2019-04-18 2019-07-23 维沃移动通信有限公司 一种多屏控制方法及终端
CN112019685A (zh) * 2020-08-26 2020-12-01 北京字节跳动网络技术有限公司 终端的控制方法、装置、终端和存储介质
CN117615055B (zh) * 2023-09-19 2024-11-01 荣耀终端有限公司 一种显示控制方法、电子设备及存储介质

Also Published As

Publication number Publication date
WO2025039501A1 (zh) 2025-02-27

Similar Documents

Publication Publication Date Title
CN111176504B (zh) 一种界面元素的显示方法及电子设备
CN110839096B (zh) 一种具有折叠屏的设备的触控方法与折叠屏设备
CN108845856B (zh) 基于对象的同步更新方法、装置、存储介质及设备
WO2020253758A1 (zh) 一种用户界面布局方法及电子设备
WO2022161119A1 (zh) 一种显示方法及电子设备
CN113360222B (zh) 一种应用信息的显示方法及相关设备
CN113127130B (zh) 页面跳转方法、装置及存储介质
WO2023130921A1 (zh) 一种适配多设备的页面布局的方法及电子设备
EP4202666A1 (en) Application access method and related apparatus
CN113409427A (zh) 动画播放方法、装置、电子设备及计算机可读存储介质
CN112835495A (zh) 开启应用程序的方法、装置及终端设备
CN113986072B (zh) 键盘显示方法、折叠屏设备和计算机可读存储介质
US12008211B2 (en) Prompt method and terminal device
CN113031838B (zh) 屏幕录制方法、装置及电子设备
CN119718498A (zh) 界面显示方法、电子设备及存储介质
CN117135391A (zh) 媒体内容展示方法、装置、电子设备以及存储介质
CN119493500A (zh) 显示二维码的方法及相关电子设备
CN116719587A (zh) 屏幕显示方法、电子设备及计算机可读存储介质
CN115993993A (zh) 冷启动方法及相关设备
CN115686701A (zh) 一种分屏方法及相关装置
CN117111796B (zh) 一种协同显示方法、设备及介质
CN116382896B (zh) 图像处理算法的调用方法、终端设备、介质及产品
EP4383191A1 (en) Display method and electronic device
CN118503957A (zh) 广告拦截方法、设备及介质
CN119987919A (zh) 显示方法和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB02 Change of applicant information

Country or region after: China

Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040

Applicant after: Honor Terminal Co.,Ltd.

Address before: 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong

Applicant before: Honor Device Co.,Ltd.

Country or region before: China

CB02 Change of applicant information