CN116743908B - 壁纸显示方法及相关装置 - Google Patents
壁纸显示方法及相关装置 Download PDFInfo
- Publication number
- CN116743908B CN116743908B CN202211118962.8A CN202211118962A CN116743908B CN 116743908 B CN116743908 B CN 116743908B CN 202211118962 A CN202211118962 A CN 202211118962A CN 116743908 B CN116743908 B CN 116743908B
- Authority
- CN
- China
- Prior art keywords
- wallpaper
- service
- terminal equipment
- resource
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000015654 memory Effects 0.000 claims description 62
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 abstract description 21
- 238000011161 development Methods 0.000 abstract description 17
- 230000004044 response Effects 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 55
- 239000010410 layer Substances 0.000 description 33
- 238000004891 communication Methods 0.000 description 27
- 230000008859 change Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 22
- 230000000694 effects Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 11
- 230000003068 static effect Effects 0.000 description 11
- 230000001976 improved effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000008093 supporting effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 239000006260 foam Substances 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Landscapes
- Telephone Function (AREA)
Abstract
本申请实施例提供一种壁纸显示方法及相关装置。该方法包括:终端设备基于第一壁纸服务显示第一壁纸;终端设备接收到针对第二壁纸的标识的第一操作;响应于第一操作,终端设备得到第二壁纸对应的壁纸服务的标识;当第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务时,终端设备基于第一壁纸服务实现第二壁纸的显示。这样,当壁纸发生改变时,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本,一定程度上降低了风险。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种壁纸显示方法及相关装置。
背景技术
随着终端技术的发展,终端所支持的壁纸种类和壁纸数量越来越多,为了满足用户的多样性需求,终端所支持的壁纸从静态的图片壁纸发展到动态的视频壁纸。
可能的实现中,在视频壁纸开发时,每套视频壁纸均需要在终端的软件框架中定制壁纸服务,当用户选择使用某一视频壁纸时,终端设备需要选择该视频壁纸对应的壁纸服务辅助实现该视频壁纸的显示。
但是,上述实现中,壁纸服务维护难度高,项目占用空间大,壁纸开发效率低,人工成本高。
发明内容
本申请实施例提供一种壁纸显示方法及相关装置,该方法提供一种壁纸框架,可以根据壁纸的主题包,为该主题包适配壁纸服务,还能支持在用户更改壁纸导致壁纸类型发生变化时,自动切换到壁纸类型变化后对应的壁纸服务,并为壁纸配置锁屏透明等系统能力,从而可以简化开发流程,节省人力成本。
第一方面,本申请实施例提供一种壁纸显示方法,方法包括:
终端设备基于第一壁纸服务显示第一壁纸;终端设备接收到针对第二壁纸的标识的第一操作;响应于第一操作,终端设备得到第二壁纸对应的壁纸服务的标识;当第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务时,终端设备基于第一壁纸服务实现第二壁纸的显示。这样,当壁纸改变时,改变后的壁纸对应的壁纸服务与改变前终端设备运行的壁纸服务相同时,终端设备可以基于改变前终端设备运行的壁纸服务显示改变后的壁纸,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本。
一种可能的实现方式中,终端设备得到第二壁纸对应的壁纸服务的标识,包括:终端设备获取第二壁纸的主题包;第二壁纸的主题包配置有第二壁纸对应的壁纸服务的标识;终端设备解析第二壁纸的主题包,得到第二壁纸对应的壁纸服务的标识。这样,终端设备可以通过解析壁纸的主题包,快速准确的得到壁纸对应的壁纸服务的标识。
一种可能的实现方式中,第二壁纸的主题包中还包括第二壁纸的壁纸资源,以及第二壁纸的配置文件;壁纸资源包括视频和图片,配置文件包括壁纸资源的帧数和壁纸资源的显示相关参数;终端设备基于第一壁纸服务实现第二壁纸的显示,包括:终端设备根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源;终端设备基于更新后的第一壁纸服务中的壁纸资源显示第二壁纸。这样,在壁纸改变、壁纸对应的壁纸服务不变的情况下,终端设备可以通过更新壁纸资源、基于原壁纸服务显示改变后的壁纸,节约人力成本、提升壁纸开发的效率。
一种可能的实现方式中,显示相关参数包括深色模式或浅色模式;终端设备根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源,包括:当第二壁纸对应于深色模式时,终端设备从第二壁纸的壁纸资源中获取深色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在深色模式对应的壁纸资源;或者,当第二壁纸对应于浅色模式时,终端设备从第二壁纸的壁纸资源中获取浅色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在浅色模式对应的壁纸资源。这样,终端设备可以基于显示相关参数,根据壁纸的配置文件和资源更新壁纸资源,使得壁纸服务更加智能、增强与用户的交互能力。
一种可能的实现方式中,终端设备根据第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源之前,还包括:终端设备的应用程序框架层的折叠壁纸框架FWK向应用层的应用程序包APK中的第一壁纸服务发送安卓壁纸再请求android wallpaper reapply指令。这样,在壁纸改变、对应的壁纸服务不变的情况下,终端设备可以通过发送androidwallpaper reapply指令,指示壁纸服务更新壁纸资源和配置,节约人力成本、提升壁纸开发的效率。
一种可能的实现方式中,还包括:当终端设备支持锁屏透明显示时,终端设备将第二壁纸的壁纸资源中的图片向锁屏显示相关模块复制。这样,终端设备可以提供动态的锁屏透明场景,使壁纸服务更加丰富有趣。
一种可能的实现方式中,方法还包括:终端设备接收到针对第三壁纸的标识的第二操作;响应于第二操作,终端设备得到第三壁纸对应的壁纸服务的标识;当第一壁纸服务与第三壁纸对应的壁纸服务为不相同的服务时,终端设备启动第二壁纸服务,第二壁纸服务为第三壁纸对应的壁纸服务;终端设备基于第二壁纸服务实现第三壁纸的显示。这样,当壁纸改变时,改变后的壁纸对应的壁纸服务与改变前终端设备运行的壁纸服务不同时,终端设备可以启动改变后的壁纸对应的壁纸服务,基于改变后的壁纸对应的壁纸服务显示改变后的壁纸,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本。
一种可能的实现方式中,终端设备基于第二壁纸服务实现第三壁纸的显示,包括:终端设备基于第二壁纸服务注册监听深色模式或浅色模式;终端设备解析第三壁纸的主题包;第三壁纸的主题包包括第三壁纸的壁纸资源和第三壁纸的配置文件;终端设备根据第三壁纸的配置文件和第三壁纸的壁纸资源向第二壁纸服务中写入壁纸资源;终端设备基于第二壁纸服务中写入的壁纸资源显示第三壁纸。这样,终端设备可以将改变后的壁纸对应的壁纸资源及壁纸配置文件,主动写入改变后的壁纸对应的壁纸服务中,终端设备基于写入的壁纸资源及配置文件显示改变后的壁纸,可以增强壁纸与用户操作的交互性,节约了人力成本。
一种可能的实现方式中,终端设备根据第三壁纸的配置文件和第三壁纸的壁纸资源向第二壁纸服务中写入壁纸资源,包括:当第三壁纸对应于深色模式时,终端设备从第三壁纸的壁纸资源中获取深色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在深色模式对应的壁纸资源;或者,当第三壁纸对应于浅色模式时,终端设备从第三壁纸的壁纸资源中获取浅色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在浅色模式对应的壁纸资源。这样,终端设备可以基于显示相关参数,根据壁纸的配置文件和资源更新壁纸资源,使得壁纸服务更加智能、增强与用户的交互能力。
一种可能的实现方式中,还包括:当终端设备的系统版本大于或等于预设版本时,终端设备从数据库中获取第三壁纸的壁纸资源;或者,当终端设备的系统版本小于预设版本时,终端设备从元数据meta data中获取第三壁纸的壁纸资源。这样,可以兼容系统版本小于预设版本的终端设备,提升用户的使用体验。
一种可能的实现方式中,还包括:当终端设备支持熄屏显示AOD时,终端设备为第三壁纸配置动画时长、AOD样式以及锁屏图片。这样,通过为超级壁纸进行相关的动效配置,可以使超级壁纸的显示效果更加丰富、有趣、个性化。
第二方面,本申请实施例提供一种壁纸显示装置。该壁纸显示装置可以是终端设备,也可以是终端设备内的芯片或者芯片系统。该壁纸显示装置可以包括处理单元和显示单元。处理单元用于实现第一方面或第一方面的任意一种可能的实现方式中与处理相关的任意方法。当该壁纸显示装置是终端设备时,该处理单元可以是处理器。显示单元用于支持壁纸显示装置显示图像信息等。该壁纸显示装置还可以包括存储单元,该存储单元可以是存储器。该存储单元用于存储指令,该处理单元执行该存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种方法。当该壁纸显示装置是终端设备内的芯片或者芯片系统时,该处理单元可以是处理器。该处理单元执行存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种方法。该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也可以是该终端设备内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
示例性的,显示单元,用于基于第一壁纸服务显示第一壁纸;处理单元,用于接收到针对第二壁纸的标识的第一操作;处理单元,还用于响应于第一操作,得到第二壁纸对应的壁纸服务的标识;显示单元,还用于当第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务时,基于第一壁纸服务实现第二壁纸的显示。
一种可能的实现中,处理单元,具体用于获取第二壁纸的主题包;第二壁纸的主题包配置有第二壁纸对应的壁纸服务的标识;处理单元,还用于解析第二壁纸的主题包,得到第二壁纸对应的壁纸服务的标识。
一种可能的实现中,第二壁纸的主题包中还包括第二壁纸的壁纸资源,以及第二壁纸的配置文件;壁纸资源包括视频和图片,配置文件包括壁纸资源的帧数和壁纸资源的显示相关参数;处理单元,还用于根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源;显示单元,还用于基于更新后的第一壁纸服务中的壁纸资源显示第二壁纸。
一种可能的实现中,显示相关参数包括深色模式或浅色模式;当第二壁纸对应于深色模式时,处理单元,具体用于从第二壁纸的壁纸资源中获取深色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在深色模式对应的壁纸资源;或者,当第二壁纸对应于浅色模式时,处理单元,具体用于从第二壁纸的壁纸资源中获取浅色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在浅色模式对应的壁纸资源。
一种可能的实现中,处理单元根据第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源之前,利用终端设备的应用程序框架层的折叠壁纸框架FWK向应用层的应用程序包APK中的第一壁纸服务发送安卓壁纸再请求android wallpaper reapply指令。
一种可能的实现中,当终端设备支持锁屏透明显示时,处理单元,还用于将第二壁纸的壁纸资源中的图片向锁屏显示相关模块复制。
一种可能的实现中,处理单元,还用于接收到针对第三壁纸的标识的第二操作;响应于第二操作,处理单元,还用于得到第三壁纸对应的壁纸服务的标识;当第一壁纸服务与第三壁纸对应的壁纸服务为不相同的服务时,处理单元,还用于启动第二壁纸服务,第二壁纸服务为第三壁纸对应的壁纸服务;显示单元,还用于基于第二壁纸服务实现第三壁纸的显示。
一种可能的实现中,处理单元,具体用于基于第二壁纸服务注册监听深色模式或浅色模式;处理单元,还用于解析第三壁纸的主题包;第三壁纸的主题包包括第三壁纸的壁纸资源和第三壁纸的配置文件;处理单元,还用于根据第三壁纸的配置文件和第三壁纸的壁纸资源向第二壁纸服务中写入壁纸资源;显示单元,还用于基于第二壁纸服务中写入的壁纸资源显示第三壁纸。
一种可能的实现中,当第三壁纸对应于深色模式时,处理单元,具体用于从第三壁纸的壁纸资源中获取深色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在深色模式对应的壁纸资源;或者,当第三壁纸对应于浅色模式时,处理单元,具体用于从第三壁纸的壁纸资源中获取浅色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在浅色模式对应的壁纸资源。
一种可能的实现中,当终端设备的系统版本大于或等于预设版本时,处理单元,还用于从数据库中获取第三壁纸的壁纸资源;或者,当终端设备的系统版本小于预设版本时,处理单元,还用于从元数据meta data中获取第三壁纸的壁纸资源。
一种可能的实现中,当终端设备支持熄屏显示AOD时,处理单元,还用于为第三壁纸配置动画时长、AOD样式以及锁屏图片。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,存储器用于存储代码指令,处理器用于运行代码指令,以执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面的方法。
第五方面,本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面的方法。
第六方面,本申请实施例提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面的方法。
应当理解的是,本申请的第二方面至第六方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1为本申请实施例提供的应用场景示意图;
图2为本申请实施例提供的电子设备的结构示意图;
图3为本申请实施例提供的一种电子设备的软件架构示意图;
图4为本申请实施例提供的一种具体的壁纸显示方法的各模块交互图;
图5为本申请实施例提供的另一种具体的壁纸显示方法的各模块交互图;
图6A为本申请实施例提供的折叠壁纸显示实现的流程示意图;
图6B为本申请实施例提供的折叠壁纸显示控制的流程示意图;
图7为本申请实施例提供的结合熄屏显示的壁纸显示实现流程示意图;
图8为本申请实施例提供的一种壁纸显示方法的流程示意图;
图9为本申请实施例提供的一种壁纸显示装置的结构示意图;
图10为本申请实施例提供的一种电子设备的硬件结构示意图;
图11为本申请实施例提供的一种芯片的结构示意图。
具体实施方式
为了便于清楚描述本申请实施例的技术方案,以下,对本申请实施例中所涉及的部分术语和技术进行简单介绍:
1、主题包:主题包是一组美化系统或者软件界面的数据包。本申请实施例中,不同壁纸对应于不同的主题包,主题包可以包括三个主要文件:livepaper.xml、livepaper_config.xml和资源。其中,livepaper.xml中存储有壁纸服务名称,壁纸服务可以指用于辅助实现壁纸显示等的服务(service);livepaper_config.xml中存储有壁纸的配置文件,配置文件包括下述的一项或多项:视频帧数、视频播放速度、深色模式的视频资源样式、浅色模式下的视频资源样式、折叠壁纸的折叠速率、熄屏显示(always on display,AOD)样式等;资源中存储有深色模式下视频壁纸的视频和图片,和/或,浅色模式下视频壁纸的视频和图片等。
2、动态壁纸:可以应用在终端设备从灭屏状态到亮屏状态的过程中,动态壁纸中可以包括动画,动画也可以理解为连续的多帧图片。例如,唤醒手机由灭屏状态到亮屏状态时,可以先播放动态壁纸中的动画,动画播放完成之后,手机再显示桌面内容。
3、折叠壁纸:可以应用于折叠屏手机中,折叠屏壁纸可以包括多帧图片,折叠壁纸的播放可以与折叠屏手机的折叠角度有关。例如,折叠屏手机的角度可以是从0度到180度之间的值,可以为每个折叠角度对应一帧折叠壁纸中的图片,当折叠屏手机的折叠角度为A时,显示折叠壁纸中该角度A对应的图片。
4、超级壁纸:可以应用于AOD、锁屏界面、桌面间的显示衔接,超级壁纸中可以包括多段动画。例如,当手机由AOD切换到锁屏界面时,可以播放超级壁纸中的第一段动画,手机由锁屏界面切换到桌面时,可以播放超级壁纸中的第二段动画,手机由桌面切换到AOD时,可以播放超级壁纸中的第三段动画。可以理解的是,上述第一段、第二段、第三段仅表示三段动画之间可以为不同的动画,三段动画之间可以有联动的动画效果,不作为对动画播放顺序的限定。
5、浅色模式和深色模式:浅色模式(light)和深色模式(night)为两种不同的显示方式,两种模式主要涉及终端设备的屏幕显示颜色和亮度的不同。其中,浅色模式适用于较明亮的环境,浅色模式下的屏幕显示的颜色可以较浅、亮度较亮;深色模式适用于较黑暗的环境,深色模式下的屏幕显示的颜色可以较深、亮度较暗。
6、其他术语
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一芯片和第二芯片仅仅是为了区分不同的芯片,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
7、终端设备
本申请实施例的终端设备也可以为任意形式的电子设备,例如,电子设备可以包括具有图像处理功能的手持式设备、车载设备等。例如,一些电子设备为:手机(mobilephone)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、蜂窝电话、无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,5G网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,PLMN)中的终端设备等,本申请实施例对此并不限定。
作为示例而非限定,在本申请实施例中,该电子设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
此外,在本申请实施例中,电子设备还可以是物联网(internet of things,IoT)系统中的终端设备,IoT是未来信息技术发展的重要组成部分,其主要技术特点是将物品通过通信技术与网络连接,从而实现人机互连,物物互连的智能化网络。
本申请实施例中的电子设备也可以称为:终端设备、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置等。
在本申请实施例中,电子设备或各个网络设备包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应用层。该硬件层包括中央处理器(centralprocessing unit,CPU)、内存管理单元(memory management unit,MMU)和内存(也称为主存)等硬件。该操作系统可以是任意一种或多种通过进程(process)实现业务处理的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。该应用层包含浏览器、通讯录、文字处理软件、即时通信软件等应用。
图1为本申请实施例提供的一种应用场景示意图。在图1对应的实施例中,以终端设备为折叠屏手机为例,进行示例说明,该示例并不构成对本申请实施例的限定。
如图1中的a所示,主界面上可以包括壁纸101、设置应用图标102等。当折叠屏手机接收到用户点击设置应用图标102的操作时,折叠屏手机的显示界面由主界面跳转至设置界面,设置界面如图1中的b所示。当折叠屏手机接收到用户点击桌面和壁纸设置项103的操作时,折叠屏手机的显示界面由设置界面跳转至桌面和壁纸界面,桌面和壁纸界面如图1中的c所示。当折叠屏手机接收到用户点击主题设置项104的操作时,由桌面和壁纸界面跳转至主题界面,主题界面如图1中的d所示。
如图1中的d所示,主题界面中可以包括多个预先设置的壁纸,如命名为绽放的动态壁纸105、命名为泡沫的动态壁纸106、命名为冥想的折叠壁纸107以及命名为极限的超级壁纸108。需要说明的是,以上壁纸命名为示例说明,并不构成对本申请实施例的限定。
可以理解的是,本申请实施例所指的壁纸可以包括锁屏界面显示的壁纸,也可以包括解锁后的主界面显示的壁纸。其中,壁纸可以为图片壁纸,也可以为视频壁纸。视频壁纸的视频可以包括风景视频、游戏录屏、电影片段等,视频壁纸的视频可以单次播放,也可以循环播放,当一个视频播放完后,可以按播放列表中视频的顺序,切换到下一个视频播放,本申请实施例对此不做具体限定。
一些实现中,在壁纸的开发过程中,由于不同壁纸对应的壁纸服务不能通用,每一代终端产品都需要重新开发壁纸,每套视频壁纸都需要定制壁纸服务,增大了壁纸服务的维护难度和壁纸项目体积,增加了人工成本,存在一定的风险。
有鉴于此,本申请实施例提供一种壁纸显示方法,该方法提供一种壁纸框架,壁纸框架能够根据壁纸的主题包,为该主题包适配壁纸服务,还能支持在用户更改壁纸导致壁纸类型发生变化时,自动切换到壁纸类型变化后对应的壁纸服务。这样,当壁纸资源改变时,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本。
示例性的,图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)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(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)接口等。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。本申请实施例中,终端设备的深色模式和浅色模式可以基于环境光传感器180L实现。
指纹传感器180H用于采集指纹。温度传感器180J用于检测温度。触摸传感器180K,也称“触控器件”。骨传导传感器180M可以获取振动信号。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图3为本申请实施例提供的一种电子设备的软件架构示意图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包(android application package,APK)。如图3所示,应用程序包可以包括相机,图库,日历,通话,WLAN,蓝牙,视频,短信,主题,熄屏显示,壁纸服务模块,服务调起模块等应用程序。可以理解的是,主题的应用程序、熄屏显示的应用程序、壁纸服务模块的应用程序、服务调起模块的应用程序可以单独存在,也可以为应用程序层中任意的应用程序的一部分,例如,壁纸服务模块可以存在于主题应用程序中,本申请实施例对此不作具体限定。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,壁纸框架模块,系统界面模块等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
壁纸框架模块用于根据用户选择的壁纸标识,判断用户选择的壁纸标识对应的壁纸服务名称与当前运行的壁纸服务对应的壁纸服务名称是否相同。
系统界面模块用于读取存储于数据库中的壁纸配置文件,根据配置文件判断是否配置AOD、锁屏透明等。
安卓运行时Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
示例性的,结合图3,图4示出了本申请实施例的一种具体的壁纸显示方法的各模块交互图。如图4所示,具体步骤如下:
S401、终端设备接收到用户对设置应用中主题设置项的操作。
用户可以按照如图1所示的方式,对设置应用中的主题设置项进行操作,此处不再赘述。
可能的实现中,主题设置项中可以包括多个壁纸的标识,每个壁纸的标识可以对应一个壁纸的主题包。终端设备接收到用户对某一壁纸的标识的触发时,可以基于服务调起模块获取该壁纸的标识对应的主题包。其中,主题包的文件格式本申请实施例不作具体限定。
可能的实现中,主题包可以是以压缩形式存储的,这样可以节约存储空间。当然,主题包也可以不压缩存储,本申请实施例对此不作具体限定。
S402、服务调起模块解压主题包到data/themes/0目录,得到三个主要文件。
以主题包以压缩形式存储为例,服务调起模块可以解压主题包,并将解压后的主题包存储于终端设备的data/themes/0目录中。解压后的主题包可以包括livepaper.xml、livepaper_config.xml和资源三个主要文件。
S403、服务调起模块从livepaper.xml解析得到壁纸服务名称,通过壁纸管理服务(wallpaper manager service,WMS)启动该服务。
其中,壁纸服务名称可以包括三种:超级壁纸服务(dynamic wallpaperservice)、动态壁纸服务(dynamic wallpaper service)、折叠壁纸服务(foldablewallpaper service)。WMS可以根据解析到的壁纸服务名称启动对应的壁纸服务。
示例性的,WMS根据解析到的壁纸服务名称启动对应的壁纸服务可以基于下述的S404-S406实现。
S404、服务调起模块通过WMS判断壁纸服务名称是否相同。
WMS根据解析得到的壁纸服务名称,判断用户选择的壁纸标识对应的壁纸服务名称与当前运行的壁纸服务对应的壁纸服务名称是否相同。可以理解的是,当前运行的壁纸服务可以指终端设备接收到用户对某一壁纸的标识的触发时,终端设备运行的壁纸服务。
S405、在用户选择的壁纸标识对应的壁纸服务名称与当前运行的壁纸服务对应的壁纸服务名称为同一个壁纸服务名称的情况下,WMS发送android wallpaper reapply指令至APK。
如果用户选择的壁纸标识对应的壁纸服务名称,与当前运行的壁纸服务对应的壁纸服务名称相同,WMS向APK中正在运行的壁纸服务发送android wallpaper reapply指令。其中,android wallpaper reapply指令用于指示壁纸服务更新壁纸配置及壁纸资源,将壁纸配置和壁纸资源更新为用户选择的壁纸标识对应的壁纸配置和壁纸资源。
S406、APK中的壁纸服务收到指令。
APK中正在运行的壁纸服务收到android wallpaper reapply指令,壁纸服务基于该指令从data/themes/0目录中获取与用户选择的壁纸标识对应的壁纸配置及资源。
S407、壁纸服务更新配置及资源。
可能的实现中,壁纸服务获取到与用户选择的壁纸标识对应的壁纸配置及资源后,在数据库中更新壁纸配置及资源。
S408、系统界面模块的StatusBar监听数据库。
由于壁纸的配置和资源更新,数据库中存储的信息会发生变化。可以通过StatusBar监听数据库的变化。本申请实施例中,StatusBar可以理解为SystemUI的总入口。
当StatusBar监听到数据库中存储的信息发生变化时,StatusBar可以从数据库中提取对应的资源文件和配置文件,根据用户选择的壁纸标识对应的服务进行配置。
其中,配置的内容可以包括:AOD相关aod_switchstyle_name;锁屏图片lock_image_path;手机模式相关new_simple_mode等。
S409、系统界面模块判断壁纸服务是否支持实现锁屏透明。
以手机为例,在一些实现中,手机可以支持锁屏透明,锁屏透明可以理解为:手机接收到用户上滑锁屏界面的操作后,手机的界面可以显示解锁界面,解锁界面可以包括图案解锁界面、个人身份识别码(personal identification number,PIN)解锁界面或密码解锁界面等,解锁界面的背景可以是模糊的透明或半透明背景。
本申请实施例中,锁屏透明可以是动态的锁屏透明。动态的锁屏透明可以指手机接收到用户上滑锁屏界面的操作显示解锁界面后,解锁界面的背景为模糊的动态壁纸。
壁纸服务是否支持实现锁屏透明与终端设备芯片的能力有关,例如,可以通过用于控制锁屏透明的开关控制是否开启锁屏透明。一些终端设备的芯片不具备支持锁屏透明的能力,默认控制锁屏透明的开关关闭,终端设备不能实现锁屏透明;一些终端设备的芯片具备支持锁屏透明的能力,默认控制锁屏透明的开关打开,终端设备可以实现锁屏透明。壁纸服务是否支持实现锁屏透明还可以与壁纸支持的动画效果有关。例如,壁纸服务均为动态壁纸服务的两种壁纸,一种壁纸可以支持实现锁屏透明的上滑场景,一种壁纸不可以支持实现锁屏透明的上滑场景。
S410、在壁纸服务支持锁屏透明的情况下,系统界面模块判断从壁纸复制图片到锁屏是否复制成功。
可能的实现中,如果读写文件的IO(Input/Output)流出现错误或者data/themes/0目录中没有可供复制的图片,可能出现从壁纸复制图片到锁屏复制失败的情况。如果从壁纸复制图片到锁屏失败,此时锁屏透明的效果为静态的锁屏透明,锁屏界面的背景为静态壁纸。
可能的实现中,如果从壁纸复制图片到锁屏成功,可以设置图片的透明度,例如将图片都设置为0,此时图片对应于全透明状态;启动一个窗口,对窗口进行高斯模糊,将高斯模糊后的窗口覆盖于图片上,再将图片覆盖于解锁界面的壁纸上,用户通过模糊的透明图片可以看到动态的壁纸,实现动态的锁屏透明场景。
S411、在复制图片成功的情况下,系统界面模块中的AppHandler发送壁纸服务变化新消息。
本申请实施例中,AppHandler可以用于传递壁纸服务相关的数据信息。根据步骤S409-S410,在壁纸服务支持锁屏透明且从壁纸服务图片到锁屏成功的情况下,AppHandler可以发送壁纸服务新消息,壁纸服务变化新消息用于通知SystemUI运行锁屏相关业务、更新锁屏界面。
S412、SystemUI运行锁屏相关业务。
SystemUI可以为系统提供显示界面,比如锁屏界面,充电界面,状态栏,导航栏,多任务栏等。锁屏相关业务可以包括:锁屏透明、动态的锁屏壁纸等。
本申请实施例中,基于AppHandler发送的动态壁纸服务变化新消息,SystemUI可以运行锁屏透明等锁屏业务。
可以理解的是,步骤S404-S407可以与步骤S408-S412同步进行,不限定顺序。
这样,当壁纸服务不变、壁纸资源、配置等发生改变时,终端设备可以基于壁纸改变前运行的壁纸服务显示改变后的壁纸,壁纸服务无需改变,简化了壁纸开发流程、提升了壁纸开发效率、节约了存储空间和人力成本。
当然,在用户选择新的壁纸时,壁纸的服务也可以发生变化,例如,用户选择新的壁纸前,终端设备运行的壁纸服务为动态壁纸,用户选择的壁纸为折叠壁纸或超级壁纸,此时壁纸的服务发生变化。
示例性的,结合图3,图5示出了本申请实施例的另一种具体的壁纸显示方法的各模块交互图。如图5所示,具体步骤如下:
S501、终端设备接收到用户对设置应用中主题设置项的操作。
S502、服务调起模块解压主题包到data/themes/0目录,得到三个主要文件。
S503、服务调起模块从livepaper.xml解析得到壁纸服务名称,通过WMS启动该服务。
示例性的,WMS根据解析到的壁纸服务名称启动对应的壁纸服务可以基于下述的S504-S506实现。
S504、服务调起模块通过WMS判断壁纸服务名称是否相同。
步骤S501-S504的具体描述可以参照对步骤S401-S404的描述,此处不再赘述。
S505、在用户选择的壁纸标识对应的壁纸服务名称与当前运行的壁纸服务对应的壁纸服务名称为不同壁纸服务名称的情况下,WMS绑定(bind)新服务。
由于用户选择的壁纸标识对应的壁纸服务名称与当前运行的壁纸服务对应的壁纸服务名称不同,WMS准备启动新的壁纸服务,新的壁纸服务即用户选择的壁纸标识对应的壁纸服务。
S506、壁纸服务模块启动壁纸服务。
壁纸服务模块通过调用onCreate函数开始壁纸的生命周期,启动新的壁纸服务。
S507、壁纸服务模块通过注册监听深色/浅色模式。
注册主要包括注册传感器和监听器。监听器可以包括:深色模式和浅色模式的监听器、用户切换的监听器、简易模式的监听器、折叠壁纸场景下折叠角度的监听器等。
例如,壁纸服务模块注册深色模式和浅色模式的监听器后,当监听器监听到终端设备的显示模式由深色模式切换为浅色模式时,通知壁纸服务针对深色模式切换为浅色模式这一事件进行处理,将深色的视频资源更新为浅色的视频资源。
S508、壁纸服务模块解析livepaper_config.xml。
壁纸服务模块根据现机主用户解析data/themes/0目录下的livepaper_config.xml,得到livepaper_config.xml下存储的配置文件,如视频帧数、视频播放速度、深色模式的视频资源样式、浅色模式的视频资源样式等。
可以理解的是,步骤S508和步骤S509之间没有先后,不限定顺序。
S509、壁纸服务模块校验配置文件。
壁纸服务模块校验解析得到的配置文件的准确性、判断配置文件是否异常。
如果配置文件错误,例如一个视频壁纸的视频帧数为1秒钟60帧,解析得到的视频壁纸的视频帧数为0帧,可以认为配置文件出现异常,结束壁纸服务流程。
S510、壁纸服务模块解析配置文件,转换为代码可用的配置。
当校验配置文件的结果为正确后,壁纸服务模块通过解析配置文件将配置文件转换为代码可识别的配置文件,这一过程也可以称为配置文件代码化。
进一步的,壁纸服务模块可以根据壁纸资源的路径获取对应的资源。壁纸资源的路径可以包括视频资源的路径和图片资源的路径。其中,视频资源的路径分为深色模式下视频资源的路径和浅色模式下视频资源的路径;图片资源的路径可以包括锁屏时的锁屏图片的路径,分为深色模式下图片资源的路径和浅色模式下图片资源的路径。同时,壁纸服务模块可以授予系统用户界面SystemUI读取图片资源路径的权限。
S511、壁纸服务模块初始化壁纸播放实现策略。
本申请实施例中,壁纸播放实现策略与媒体播放器media palyer相关,传统的media palyer可以支持按时间播放的策略,但不能支持逐帧播放的策略。本申请实施例中,通过mediacodec与物理弹性动画SpringAnimation结合,初始化壁纸播放实现策略以实现逐帧播放的壁纸播放策略。
S512、壁纸服务模块将配置写入数据库。
基于步骤S508-S511,壁纸服务模块通过解析livepaper_config.xml,获得壁纸资源的路径,壁纸服务模块根据壁纸资源的路径获取壁纸资源,将获取到的壁纸资源及壁纸配置文件写入存储于data/themes/0目录下的数据库中。
S513、壁纸服务模块初始化壁纸界面。
壁纸服务模块根据数据库的配置初始化壁纸界面。可能的实现中,在初始化壁纸界面时,手机显示界面可以弹出toast消息弹窗,用于提示用户:手机正在进行壁纸界面的初始化。
S514、系统界面模块的StatusBar收到壁纸服务变化广播。
由于用户选择的壁纸标识对应的壁纸服务类型与当前运行的壁纸服务不同,壁纸服务发生改变,StatusBar收到壁纸服务变化广播。
S515、系统界面模块默认初始化为静态壁纸类型。
由于系统界面模块与壁纸服务模块并行运行,壁纸服务模块中的数据库配置写入可能有延迟情况发生,系统界面模块不能及时获知变化后的壁纸服务类型,为保证程序的顺利运行,可以先默认初始化为静态壁纸类型。
S516、系统界面模块判断Wallpaperinfo是否为空。
本申请实施例中,Wallpaperinfo为空代表壁纸服务变化广播为静态壁纸广播,Wallpaperinfo不为空,代表壁纸服务变化广播不是静态壁纸广播。
S517、当Wallpaperinfo不为空时,系统界面模块判断壁纸meta数据是否有livewallpaper配置,并为数据库的live_wallpaper_effect赋值。
其中,livewallpaper配置用于表示壁纸是否支持缩放。缩放可以指当手机接收到用户解锁手机的操作后,手机界面由锁屏界面切换到桌面、锁屏界面显示的壁纸切换至桌面显示的壁纸时,壁纸的大小可以发生改变,例如锁屏界面的壁纸切换至桌面的壁纸时有1.1倍渐变至1.0倍的动效。
由于视频壁纸不支持缩放的动效,当壁纸为视频壁纸时,即壁纸为超级壁纸、折叠壁纸、动态壁纸中的任意一种时,数据库写值live_wallpaper_effect:0,表示不支持缩放;当壁纸为除视频壁纸以外的其他壁纸时,数据库写值live_wallpaper_effect:1,表示支持缩放。
S518、系统界面模块判断壁纸服务是否支持实现锁屏透明。
S519、在壁纸服务支持锁屏透明的情况下,系统界面模块判断从壁纸复制图片到锁屏是否复制成功。
步骤S518-S519的具体描述可以参考步骤S409-S410的描述,此处不再赘述。
S520、系统界面模块判断终端设备是否使用归一壁纸方案开关。
其中,本申请实施例提供的壁纸显示方法也可以称为归一壁纸方案,系统界面模块根据终端设备的系统版本判断终端设备是否支持使用归一壁纸方案。例如,系统版本为7.0及以上的终端设备可以支持归一壁纸方案,则打开归一壁纸方案开关;系统版本为7.0以下的终端设备不可以支持归一壁纸方案,则关闭归一壁纸方案开关。
如果终端设备打开归一壁纸方案的开关,终端设备可以从数据库中复制图片,获取锁屏图片。如果终端设备关闭归一壁纸方案开关,终端设备可以从meta-data中获取锁屏图片。
S521、判断终端设备是否支持配置熄屏显示。
熄屏显示是指当手机处于锁定状态时,不用点亮屏幕,一些重要信息可以始终显示在手机上。例如,屏幕部分区域可以显示时间、来电、消息、电池信息、推送消息等内容,用户可以直观看到需要的信息,减少用户操作手机的步骤。超级壁纸可以支持AOD功能。
可能的实现中,如果壁纸不支持配置AOD,说明该壁纸不是超级壁纸,此时需清空超级壁纸相关配置,并接管power灭屏属性。其中,power灭屏属性可以指终端设备接收到用户对power键的操作时,屏幕直接由亮屏状态切换至灭屏状态,亮屏状态切换至灭屏状态的过程中不再提供熄屏显示服务。
S522、配置超级壁纸动画时长、AOD样式、锁屏图片。
如果壁纸支持配置AOD,说明该壁纸为超级壁纸,为超级壁纸配置动画时长、AOD样式、锁屏图片。
其中,AOD样式可以包括AOD的显示内容、AOD的动画效果等。
S523、BackDrop界面设置透明。
当终端设备接收到用户向上滑动终端设备锁屏界面的操作时,终端设备可以显示解锁界面,BackDrop界面设置透明可以用于解锁界面的背景模糊显示,以实现锁屏透明的功能。
S524、AppHandler发送动态壁纸服务变化新消息。
S525、SystemUI运行锁屏相关业务。
步骤S524-S525的具体描述可以参考步骤S411-S412的描述,此处不再赘述。可以理解的是,步骤S504-S513可以与步骤S514-S523同步进行,不限定顺序。
上面图4和图5说明了基于本申请实施例的壁纸框架实现的壁纸配置更新相关流程,在壁纸配置完成后,在一些场景中可以结合本申请提供的壁纸配置实现壁纸显示。示例性的,图6A和图6B为本申请实施例提供的折叠壁纸显示的实现流程示意图。图7为结合AOD的壁纸显示实现流程示意图。
如图6A所示,折叠屏手机由大屏折叠为小屏的过程中,折叠角度传感器的值会发生变化,调用onSensorChange监听折叠角度传感器的值;调用animateToFinalPosition启动SpringAnimation;SpringAnimation启动后,可以通过调用onAnimationUpdate监听壁纸动画的变化,通过sendframe发送壁纸动画相关数据,调用media.seekto获取壁纸动画播放的进度。
其中,SpringAnimation可以指接近真实物理世界的动画,本申请实施例中,折叠壁纸服务调用SpringAnimation可以使得折叠屏动画的播放速率根据折叠屏手机的折叠速度变化。例如,当折叠屏手机折叠速率较慢时,折叠屏动画的播放速率也可以较慢;当折叠屏手机折叠速率较快时,折叠屏动画的播放速率也可以较快。
如图6B所示,折叠屏手机由大屏折叠为小屏的过程中,当手机屏幕发生变化时,如果需要程序以屏幕改变前的状态继续运行,需要通过调用onConfigurationChanged,获取当前的屏幕信息;当Surface发生变化时,调用onSurfaceChanged,由于折叠屏手机处于由大屏折叠为小屏的过程中,screen由大屏变为小屏,调用screenChange(isSmall),并根据screenChange(isSmall)调用seekto(small/large),获取小屏下的surface参数,触发回调函数onSurfaceRedrawNeeded以通知SurfaceHolder的使用者,调用redrawSurface重新绘制surface,并调用reConfig更新配置文件。
通过图6A和图6B所示的方式,折叠屏手机可以实现折叠壁纸的显示。
如图7所示,以手机为例,当手机接收到用户进行的与手机亮灭屏相关的操作时,Power开始亮灭屏流程时,调用KeyguardService执行亮灭屏流程。熄屏显示AOD主要发生在灭屏阶段。其中,用户进行的与手机亮灭屏相关操作可以包括:按压电源键、指纹解锁、人脸解锁、抬手、一键锁屏等。
KeyguardService调用onStartedGoingToSleep,执行灭屏流程;调用onFinishGoingToSleep,灭屏流程执行结束;调用onDreamingStarted,开始准备显示AOD;调用onScreenTurnedOff,开始显示AOD。
同时,同步执行DreamController这一AOD控制流程。启动DozeService,进行AOD各种配置初始化,例如AOD的显示状态、显示方式等。判断当前应用壁纸是否为超级壁纸:如果是超级壁纸,需要获取壁纸动效,包括桌面到AOD的时长、锁屏界面到AOD的时长,DreamController开始执行超级壁纸灭屏动效及衔接AOD界面逐渐显示的流程;如果不是超级壁纸,则初始化普通壁纸的AOD界面的绘制流程。
调用DozeServiceonDreamingStarted,开始准备显示AOD。调用Enable TP,用于AOD支持触摸显示,其中,TP为触摸屏(touch panel,TP);判断是否支持超级壁纸,如果不支持超级壁纸,则执行灭屏操作后直接进行进入Doze。
KeyguardService还可以执行亮屏流程,KeyguardService调用doFaceRecognize人脸识别用于唤醒手机;调用onStartedWakingUp,唤醒手机;调用onDreamingStopped,停止AOD显示;调用onScreenTurningOn,开始执行亮屏显示;调用onScreenTurnedOn,执行亮屏显示;调用startKeyguardExitAnimation,开始播放退出锁屏界面的动画。
在KeyguardService执行灭屏的过程中,终端设备调用onScreenTurnedOff,开始显示AOD后;或者在KeyguardService执行亮屏的过程中,终端设备调用startKeyguardExitAnimation,开始播放退出锁屏界面的动画后;或者DozeService启动后,如果终端设备支持超级壁纸,则AOD调用WMS指令携带AOD当前屏幕位置等AOD相关状态,上述三种情况均可以基于WallpaperManager发送指令sendWallpaperCommand至壁纸服务,壁纸服务基于收到的指令实现对应的壁纸显示。
可以理解的是,上述实施例是以安卓系统中的具体实现为例,示例性说明本申请实施例的壁纸框架的具体运行方式,在其它操作系统中可以基于该构思适应修改相关的函数和执行模块。且上述实现中的一些步骤可以为可选步骤,本申请实施例不作具体限定。
下面将结合场景说明本申请实施例的壁纸显示方法。
示例性的,图8示出了本申请实施例的一种壁纸显示方法。方法包括:
S801、终端设备基于第一壁纸服务显示第一壁纸。
第一壁纸服务用于运行壁纸服务类型为第一壁纸服务的壁纸。本申请实施例中,壁纸服务可以分为三类,包括:动态壁纸服务、折叠壁纸服务和超级壁纸服务。
第一壁纸可以理解为图1中的d所示的壁纸,例如,第一壁纸可以对应于图1中的d所示的命名为绽放的动态壁纸105,此时,第一壁纸服务对应于动态壁纸服务,终端设备基于动态壁纸服务显示动态壁纸。
S802、终端设备接收到针对第二壁纸的标识的第一操作。
本申请实施例中,第二壁纸的标识可以是第二壁纸对应的壁纸名称、壁纸标号等,壁纸的标识可以用文字、数字、字母、符号等表示,本申请实施例对此不做具体限定。第一操作可以是用户触发的、选择第二壁纸的标识的操作。
其中,第二壁纸的标识可以理解为如图1中的d所示的壁纸名称:绽放(动态)、泡沫(动态)、冥想(折叠)、极限(超级)等。第一操作可以理解为终端设备接收到的用户选择图1中的d所示的某一壁纸标识的操作。例如,用户点击图1中的d所示的“绽放(动态)”这一壁纸标识,终端设备接收到用户选择“绽放(动态)”这一壁纸标识的操作。
S803、响应于第一操作,终端设备得到第二壁纸对应的壁纸服务的标识。
本申请实施例中,壁纸服务的标识可以理解为步骤S403中的超级壁纸服务、动态壁纸服务、折叠壁纸服务,壁纸服务的标识还可以用其他的文字、数字、字母、符号等表示,本申请实施例对此不做具体限定。
例如,以动态壁纸为例,终端设备响应于用户选择图1中的d所示的“绽放(动态)”这一壁纸标识的操作,终端设备对绽放(动态)壁纸相关的壁纸文件进行解析,得到用户所选壁纸对应的壁纸服务的标识,即动态壁纸服务。
S804、当第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务时,终端设备基于第一壁纸服务实现第二壁纸的显示。
终端设备根据得到的第二壁纸对应的壁纸服务的标识,判断与第一壁纸服务的标识是否相同,标识相同则说明第二壁纸对应的壁纸服务为第一壁纸服务,终端设备可以基于第一壁纸服务显示第二壁纸。
可以理解的是,标识相同可以是两个壁纸服务的标识完全相同,例如,第一壁纸服务名称为折叠壁纸服务,第二壁纸对应的壁纸服务名称为折叠壁纸服务、则判断出第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务。
也可以是两个壁纸服务的标识大于一定的相似度。例如,第一壁纸服务名称为“动态壁纸1.0”,第二壁纸对应的壁纸服务名称为“动态壁纸2.0”,可以认为两个壁纸服务的标识大于一定的相似度,第一壁纸服务与第二壁纸对应的壁纸服务为相同的服务。
这样,当壁纸改变时,改变后的壁纸对应的壁纸服务与改变前终端设备运行的壁纸服务相同时,终端设备可以基于改变前终端设备运行的壁纸服务显示改变后的壁纸,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本。
可选的,终端设备得到第二壁纸对应的壁纸服务的标识,包括:
终端设备获取第二壁纸的主题包;第二壁纸的主题包配置有第二壁纸对应的壁纸服务的标识;终端设备解析第二壁纸的主题包,得到第二壁纸对应的壁纸服务的标识。
也就是说,终端设备基于用户触发的第一操作获取第二壁纸的主题包,通过解析主题包得到第二壁纸对应的壁纸服务的标识。具体方式可以参照步骤S401-S403的描述,终端设备接收到用户选择主题设置项中某一壁纸标识的操作后,获取到该壁纸标识对应的主题包。主题包可以以压缩形式存储,也可以不压缩存储,终端设备可以通过解压或直接读取的方式得到主题包中的文件,文件中可以包括livepaper.xml,终端设备解析livepaper.xml,可以得到壁纸对应的壁纸服务的标识。
这样,终端设备可以通过解析壁纸的主题包,快速准确的得到壁纸对应的壁纸服务的标识。
可选的,第二壁纸的主题包中还包括第二壁纸的壁纸资源,以及第二壁纸的配置文件;壁纸资源包括视频和图片,配置文件包括壁纸资源的帧数和壁纸资源的显示相关参数。
终端设备基于第一壁纸服务实现第二壁纸的显示,包括:终端设备根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源;终端设备基于更新后的第一壁纸服务中的壁纸资源显示第二壁纸。
本申请实施例中,第二壁纸的壁纸资源可以存储于主题包的资源文件中,第二壁纸的配置文件可以存储于主题包的livepaper_config.xml中。
终端设备根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源及配置,具体方式可以参照步骤S407,根据步骤S407,当用户选择的壁纸标识为第二壁纸的标识时,第一壁纸服务获取到第二壁纸标识对应的壁纸配置和资源后,在data/themes/0目录下的数据库中更新壁纸资源和壁纸配置。
终端设备基于更新后的第一壁纸服务中的壁纸资源及配置显示第二壁纸。例如,第一壁纸服务为超级壁纸服务,终端设备基于更新后的超级壁纸服务中的壁纸资源及配置显示超级壁纸,终端设备播放超级壁纸的动画;第一壁纸服务为折叠壁纸服务,终端设备基于更新后的折叠壁纸服务中的壁纸资源及配置显示折叠壁纸,终端设备播放折叠壁纸的动画;第一壁纸服务为动态壁纸服务,终端设备基于更新后的动态壁纸服务中的壁纸资源及配置显示动态壁纸,终端设备播放动态壁纸的动画。
这样,在壁纸改变、壁纸对应的壁纸服务不变的情况下,终端设备可以通过更新壁纸资源、基于原壁纸服务显示改变后的壁纸,节约人力成本、提升壁纸开发的效率。
可选的,显示相关参数包括深色模式或浅色模式;终端设备根据第二壁纸的配置文件和第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源,包括:
当第二壁纸对应于深色模式时,终端设备从第二壁纸的壁纸资源中获取深色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在深色模式对应的壁纸资源;
或者,当第二壁纸对应于浅色模式时,终端设备从第二壁纸的壁纸资源中获取浅色模式对应的壁纸资源,并更新第一壁纸服务中的壁纸资源为第二壁纸在浅色模式对应的壁纸资源。
可以理解的是,终端设备由深色模式切换为浅色模式时,终端设备可以实时更新第一壁纸服务中的壁纸资源为第二壁纸在浅色模式对应的壁纸资源。或者,终端设备由浅色模式切换为深色模式时,终端设备可以实时更新第一壁纸服务中的壁纸资源为第二壁纸在深色模式对应的壁纸资源。
这样,终端设备可以基于显示相关参数,根据壁纸的配置文件和资源更新壁纸资源,使得壁纸服务更加智能、增强与用户的交互能力。
可选的,终端设备根据第二壁纸的壁纸资源更新第一壁纸服务中的壁纸资源之前,还包括:终端设备的应用程序框架层的折叠壁纸框架FWK向应用层的应用程序包APK的第一壁纸服务发送安卓壁纸再请求android wallpaper reapply指令。
其中,折叠壁纸框架(foldable wallpaper framework)可以位于应用程序框架层的壁纸服务模块中,android wallpaper reapply指令可以参照步骤S405中的描述,此处不再赘述。
对应于步骤S405,运行于FWK中的WMS向APK中正在运行的壁纸服务,即第一壁纸服务发送android wallpaper reapply,第一壁纸服务可以基于该指令将第一壁纸服务中的壁纸配置和资源更新为第二壁纸对应的壁纸配置和资源。
这样,在壁纸改变、对应的壁纸服务不变的情况下,终端设备可以通过发送android wallpaper reapply指令,指示壁纸服务更新壁纸资源和配置,节约人力成本、提升壁纸开发的效率。
可选的,当终端设备支持锁屏透明显示时,终端设备将第二壁纸的壁纸资源中的图片向锁屏显示相关模块复制。
其中,锁屏透明的具体描述可以参照步骤S409中对锁屏透明的描述,此处不再赘述。
锁屏显示相关模块可以用于显示锁屏透明等锁屏相关业务。当终端设备将第二壁纸的壁纸资源中的图片向锁屏显示相关模块复制后,对应于步骤S410,锁屏显示相关模块可以通过对图片进行透明度设置,并将图片覆盖于动态的锁屏壁纸上,以实现动态的锁屏透明场景。
这样,终端设备可以提供动态的锁屏透明场景,使壁纸服务更加丰富有趣。
示例性的,本申请实施例还提供另一种壁纸显示方法,包括:
终端设备接收到针对第三壁纸的标识的第二操作;响应于第二操作,终端设备得到第三壁纸对应的壁纸服务的标识;当第一壁纸服务与第三壁纸对应的壁纸服务为不相同的服务时,终端设备启动第二壁纸服务,第二壁纸服务为第三壁纸对应的壁纸服务;终端设备基于第二壁纸服务实现第三壁纸的显示。
本申请实施例中,第二操作可以是用户触发的、选择第三壁纸的标识的操作。第二壁纸服务用于运行壁纸服务类型为第二壁纸服务的壁纸。
对应于步骤S501-S506,终端设备接收到的用户选择主题设置项中第三壁纸的标识的第二操作,响应于第二操作,终端设备获取到第三壁纸对应的主题包,终端设备对主题包中的文件进行解析得到第三壁纸对应的壁纸服务的标识。终端设备中的服务调起模块可以通过WMS判断第一壁纸服务的标识与第三壁纸对应的壁纸服务的标识是否相同,进而判断第一壁纸服务与第三壁纸对应的壁纸是否相同。当第三壁纸对应的壁纸服务为第二壁纸服务时,第二壁纸服务与第一壁纸服务不同,终端设备启动第二壁纸服务,基于第二壁纸服务实现第三壁纸的显示。
例如,第一壁纸服务可以对应于动态壁纸服务,第三壁纸的标识可以对应于图1中的d所示的“极限(超级)”壁纸标识。终端设备响应于用户选择“极限(超级)”这一壁纸标识的操作,终端设备对极限(超级)壁纸相关的壁纸文件进行解析,得到用户所选壁纸对应的壁纸服务的标识,即超级壁纸服务。超级壁纸服务与用户选择“极限(超级)”壁纸标识时,系统正在运行的动态壁纸服务不同,终端设备启动超级壁纸服务,基于超级壁纸服务显示“极限(超级)”这一超级壁纸。
这样,当壁纸改变时,改变后的壁纸对应的壁纸服务与改变前终端设备运行的壁纸服务不同时,终端设备可以启动改变后的壁纸对应的壁纸服务,基于改变后的壁纸对应的壁纸服务显示改变后的壁纸,不需要为每个壁纸都定制壁纸服务,简化了开发流程,节省了人力成本。
可选的,终端设备基于第二壁纸服务实现第三壁纸的显示,包括:终端设备基于第二壁纸服务注册监听深色模式或浅色模式;终端设备解析第三壁纸的主题包;第三壁纸的主题包包括第三壁纸的壁纸资源和第三壁纸的配置文件;终端设备根据第三壁纸的配置文件和第三壁纸的壁纸资源向第二壁纸服务中写入壁纸资源;终端设备基于第二壁纸服务中写入的壁纸资源显示第三壁纸。
对应于步骤S507,终端设备可以注册传感器、监听器,当终端设备的显示模式由深色模式切换为浅色模式时,或者,当终端设备的显示模式由浅色模式切换为深色模式时,注册的深色模式和浅色模式的监听器监听到终端设备显示模式的变化,通知终端设备基于当前的显示模式切换更新壁纸资源。
对应于步骤S508,终端设备解析第三壁纸的主题包,得到第三壁纸的壁纸资源和第三壁纸的配置文件。
可能的实现中,对应于步骤S510,终端设备解析第三壁纸的配置文件,将配置文件转化为代码可识别的配置文件。
可能的实现中,对应于步骤S509,终端设备还可以对第三壁纸的配置文件的准确性进行检验,当配置文件的不准确时,结束运行壁纸服务。
对应于步骤S512-S513,终端设备基于解析第三壁纸的配置文件得到的壁纸资源的路径,获取壁纸资源,将获取到的第三壁纸资源及第三壁纸配置文件写入第二壁纸服务中,终端设备基于第二壁纸服务中写入的壁纸资源及壁纸配置文件初始化壁纸界面,终端设备显示第三壁纸。
这样,终端设备可以将改变后的壁纸对应的壁纸资源及壁纸配置文件,主动写入改变后的壁纸对应的壁纸服务中,终端设备基于写入的壁纸资源及配置文件显示改变后的壁纸,可以增强壁纸与用户操作的交互性,节约了人力成本。
可选的,终端设备根据第三壁纸的配置文件和第三壁纸的壁纸资源向第二壁纸服务中写入壁纸资源,包括:
当第三壁纸对应于深色模式时,终端设备从第三壁纸的壁纸资源中获取深色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在深色模式对应的壁纸资源。
或者,当第三壁纸对应于浅色模式时,终端设备从第三壁纸的壁纸资源中获取浅色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向第二壁纸服务中写入第三壁纸在浅色模式对应的壁纸资源。
对应于步骤S510,终端设备可以基于壁纸资源的路径,获取对应的资源。深色模式对应的壁纸资源可以包括深色模式下的视频资源和图片资源;浅色模式对应的壁纸资源可以包括浅色模式下的视频资源和图片资源。
对应于步骤S511,壁纸播放实现策略可以包括按时间播放和逐帧播放两种策略,本申请实施例中,可以通过mediacodec与物理弹性动画SpringAnimation结合,初始化壁纸播放实现策略为按帧播放的策略,基于媒体播放器media palyer逐帧播放壁纸中的动画。
其中,向第二壁纸服务中写入第三壁纸在浅色模式对应的壁纸资源,或者,向第二壁纸服务中写入第三壁纸在深色模式对应的壁纸资源,可以对应于步骤S512,终端设备中的壁纸服务模块将壁纸的配置和资源写入数据库中。
这样,终端设备可以基于显示相关参数,根据壁纸的配置文件和资源更新壁纸资源,使得壁纸服务更加智能、增强与用户的交互能力。
可选的,当终端设备的系统版本大于或等于预设版本时,终端设备从数据库中获取第三壁纸的壁纸资源;或者,当终端设备的系统版本小于预设版本时,终端设备从元数据meta data中获取第三壁纸的壁纸资源。
对应于步骤S520,不同系统版本的终端设备壁纸资源的获取途径不同。本申请实施例中,当终端设备的系统版本大于或等于预设版本时,终端设备可以通过数据库获取第三壁纸的壁纸资源;当终端设备的系统版本小于预设版本时,数据库中没有存储第三壁纸的壁纸资源,终端设备需要从meta data中获取壁纸资源。
这样,可以兼容系统版本小于预设版本的终端设备,提升用户的使用体验。
可选的,当终端设备支持熄屏显示AOD时,终端设备为第三壁纸配置动画时长、AOD样式以及锁屏图片。
对应于步骤S521-S522,当终端设备支持熄屏显示AOD时,第三壁纸可以对应于超级壁纸,为超级壁纸配置壁纸的动画时长、AOD样式及锁屏图片等。
这样,通过为超级壁纸进行相关的动效配置,可以使超级壁纸的显示效果更加丰富、有趣、个性化。
上面结合图4-图10,对本申请实施例提供的方法进行了说明,下面对本申请实施例提供的执行上述方法的装置进行描述。如图9所示,图9为本申请实施例提供的一种壁纸显示装置的结构示意图,该壁纸显示装置可以是本申请实施例中的电子设备,也可以是电子设备内的芯片或芯片系统。
如图9所示,壁纸显示装置900可以用于电路、硬件组件或者芯片中,该壁纸显示装置包括处理单元901和显示单元902。其中,处理单元901用于支持壁纸显示装置执行的步骤,例如,处理单元用于处理图8中的S801至S804的步骤。显示单元902用于显示支持壁纸显示装置显示图像信息,如壁纸等。
一种可能的实现方式中,该壁纸显示装置还可以包括:存储单元904。其中,存储单元904可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
存储单元904可以独立存在,通过通信总线与处理单元901相连。存储单元904也可以和处理单元901集成在一起。
以壁纸显示装置可以是本申请实施例中的终端设备的芯片或芯片系统为例,存储单元904可以存储终端设备的方法的计算机执行指令,以使处理单元901执行上述实施例中终端设备的方法。存储单元904可以是寄存器、缓存或者随机存取存储器(random accessmemory,RAM)等,存储单元904可以和处理单元901集成在一起。存储单元904可以是只读存储器(read-only memory,ROM)或者可存储静态信息和指令的其他类型的静态存储设备,存储单元904可以与处理单元901相独立。
一种可能的实现方式中,壁纸显示装置还可以包括:通信单元903。其中,通信单元903用于支持壁纸显示装置与其它设备交互。示例性的,当该壁纸显示装置是终端设备时,该通信单元903可以是通信接口或接口电路。当该壁纸显示装置是终端设备内的芯片或芯片系统时,该通信单元903可以是通信接口。例如通信接口可以为输入/输出接口、管脚或电路等。
本实施例的装置对应地可用于执行上述方法实施例中执行的步骤,其实现原理和技术效果类似,此处不再赘述。
图10为本申请实施例提供的一种电子设备的硬件结构示意图,如图10所示,该电子设备包括处理器1001,通信线路1004以及至少一个通信接口(图10中示例性的以通信接口1003为例进行说明)。
处理器1001可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路1004可包括在上述组件之间传送信息的电路。
通信接口1003,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,WLAN)等。
可能的,该电子设备还可以包括存储器1002。
存储器1002可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路1004与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1002用于存储执行本申请方案的计算机执行指令,并由处理器1001来控制执行。处理器1001用于执行存储器1002中存储的计算机执行指令,从而实现本申请实施例所提供的方法。
可能的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器1001可以包括一个或多个CPU,例如图10中的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备可以包括多个处理器,例如图10中的处理器1001和处理器1005。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
示例性的,图11为本申请实施例提供的一种芯片的结构示意图。芯片1100包括一个或两个以上(包括两个)处理器1120和通信接口1130。
在一些实施方式中,存储器1140存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
本申请实施例中,存储器1140可以包括只读存储器和随机存取存储器,并向处理器1120提供指令和数据。存储器1140的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,NVRAM)。
本申请实施例中,存储器1140、通信接口1130以及处理器1120通过总线系统1110耦合在一起。其中,总线系统1110除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为了便于描述,在图11中将各种总线都标为总线系统1110。
上述本申请实施例描述的方法可以应用于处理器1120中,或者由处理器1120实现。处理器1120可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1120中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1120可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器(digitalsignal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器1120可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electricallyerasable programmable read only memory,EEPROM)等本领域成熟的存储介质中。该存储介质位于存储器1140,处理器1120读取存储器1140中的信息,结合其硬件完成上述方法的步骤。
在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,CD-ROM)、RAM、ROM、EEPROM或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,DSL或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
上述的组合也应包括在计算机可读介质的范围内。以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种壁纸显示方法,其特征在于,包括:
终端设备基于第一壁纸服务显示第一壁纸;
所述终端设备接收到针对第二壁纸的标识的第一操作;
响应于所述第一操作,所述终端设备得到所述第二壁纸对应的壁纸服务的标识;
当所述第一壁纸服务与所述第二壁纸对应的壁纸服务为相同的服务时,所述终端设备基于所述第一壁纸服务实现所述第二壁纸的显示;
所述终端设备得到所述第二壁纸对应的壁纸服务的标识,包括:
所述终端设备获取所述第二壁纸的主题包;所述第二壁纸的主题包配置有所述第二壁纸对应的壁纸服务的标识;
所述终端设备解析所述第二壁纸的主题包,得到所述第二壁纸对应的壁纸服务的标识;
所述第二壁纸的主题包中还包括所述第二壁纸的壁纸资源,以及所述第二壁纸的配置文件;壁纸资源包括视频和图片,所述配置文件包括所述壁纸资源的帧数和所述壁纸资源的显示相关参数;
所述终端设备基于所述第一壁纸服务实现所述第二壁纸的显示,包括:
所述终端设备根据所述第二壁纸的配置文件和所述第二壁纸的壁纸资源更新所述第一壁纸服务中的壁纸资源;
所述终端设备基于更新后的所述第一壁纸服务中的壁纸资源显示所述第二壁纸。
2.根据权利要求1所述的方法,其特征在于,所述显示相关参数包括深色模式或浅色模式;所述终端设备根据所述第二壁纸的配置文件和所述第二壁纸的壁纸资源更新所述第一壁纸服务中的壁纸资源,包括:
当所述第二壁纸对应于深色模式时,所述终端设备从所述第二壁纸的壁纸资源中获取深色模式对应的壁纸资源,并更新所述第一壁纸服务中的壁纸资源为所述第二壁纸在所述深色模式对应的壁纸资源;
或者,当所述第二壁纸对应于浅色模式时,所述终端设备从所述第二壁纸的壁纸资源中获取浅色模式对应的壁纸资源,并更新所述第一壁纸服务中的壁纸资源为所述第二壁纸在所述浅色模式对应的壁纸资源。
3.根据权利要求2所述的方法,其特征在于,所述终端设备根据所述第二壁纸的壁纸资源更新所述第一壁纸服务中的壁纸资源之前,还包括:
所述终端设备的应用程序框架层的折叠壁纸框架FWK向应用层的应用程序包APK中的第一壁纸服务发送安卓壁纸再请求android wallpaper reapply指令。
4.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
当所述终端设备支持锁屏透明显示时,所述终端设备将所述第二壁纸的壁纸资源中的图片向锁屏显示相关模块复制。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
所述终端设备接收到针对第三壁纸的标识的第二操作;
响应于所述第二操作,所述终端设备得到所述第三壁纸对应的壁纸服务的标识;
当所述第一壁纸服务与所述第三壁纸对应的壁纸服务为不相同的服务时,所述终端设备启动第二壁纸服务,所述第二壁纸服务为所述第三壁纸对应的壁纸服务;
所述终端设备基于所述第二壁纸服务实现所述第三壁纸的显示。
6.根据权利要求5所述的方法,其特征在于,所述终端设备基于所述第二壁纸服务实现所述第三壁纸的显示,包括:
所述终端设备基于所述第二壁纸服务注册监听深色模式或浅色模式;
所述终端设备解析所述第三壁纸的主题包;所述第三壁纸的主题包包括所述第三壁纸的壁纸资源和第三壁纸的配置文件;
所述终端设备根据所述第三壁纸的配置文件和所述第三壁纸的壁纸资源向所述第二壁纸服务中写入壁纸资源;
所述终端设备基于所述第二壁纸服务中写入的壁纸资源显示所述第三壁纸。
7.根据权利要求6所述的方法,其特征在于,所述终端设备根据所述第三壁纸的配置文件和所述第三壁纸的壁纸资源向所述第二壁纸服务中写入壁纸资源,包括:
当所述第三壁纸对应于深色模式时,所述终端设备从所述第三壁纸的壁纸资源中获取深色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向所述第二壁纸服务中写入所述第三壁纸在深色模式对应的壁纸资源;
或者,当所述第三壁纸对应于浅色模式时,所述终端设备从所述第三壁纸的壁纸资源中获取浅色模式对应的壁纸资源,初始化壁纸播放实现策略为按帧播放的策略,并向所述第二壁纸服务中写入所述第三壁纸在所述浅色模式对应的壁纸资源。
8.根据权利要求6-7任一项所述的方法,其特征在于,还包括:
当所述终端设备的系统版本大于或等于预设版本时,所述终端设备从数据库中获取所述第三壁纸的壁纸资源;
或者,当所述终端设备的系统版本小于预设版本时,所述终端设备从元数据meta data中获取所述第三壁纸的壁纸资源。
9.根据权利要求8所述的方法,其特征在于,还包括:
当所述终端设备支持熄屏显示AOD时,所述终端设备为所述第三壁纸配置动画时长、AOD样式以及锁屏图片。
10.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,以执行如权利要求1-9任一项所述的壁纸显示方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述指令被执行时,使得计算机执行如权利要求1-9任一项所述的壁纸显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211118962.8A CN116743908B (zh) | 2022-09-13 | 2022-09-13 | 壁纸显示方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211118962.8A CN116743908B (zh) | 2022-09-13 | 2022-09-13 | 壁纸显示方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116743908A CN116743908A (zh) | 2023-09-12 |
CN116743908B true CN116743908B (zh) | 2024-03-26 |
Family
ID=87901773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211118962.8A Active CN116743908B (zh) | 2022-09-13 | 2022-09-13 | 壁纸显示方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116743908B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101032184A (zh) * | 2004-09-29 | 2007-09-05 | 株式会社爱可信 | 移动通信设备和用于移动通信设备的应用执行环境软件 |
CN103037105A (zh) * | 2012-12-24 | 2013-04-10 | 广东欧珀移动通信有限公司 | 一种用户终端设备自动更换主题的方法及用户终端设备 |
WO2016168961A1 (zh) * | 2015-04-20 | 2016-10-27 | 华为技术有限公司 | 智能终端主题更换方法及装置 |
CN109739590A (zh) * | 2018-05-14 | 2019-05-10 | 北京字节跳动网络技术有限公司 | 一种桌面壁纸更换方法、装置及设备 |
CN110187808A (zh) * | 2019-05-30 | 2019-08-30 | 努比亚技术有限公司 | 动态壁纸设置方法、装置及计算机可读存储介质 |
CN110209460A (zh) * | 2019-06-10 | 2019-09-06 | Oppo广东移动通信有限公司 | 一种动态壁纸的实现方法、装置、存储介质及终端 |
CN110688179A (zh) * | 2019-08-30 | 2020-01-14 | 华为技术有限公司 | 一种显示方法及终端设备 |
CN111209063A (zh) * | 2018-11-22 | 2020-05-29 | 珠海格力电器股份有限公司 | 一种桌面主题预览方法、系统及智能终端 |
CN111209065A (zh) * | 2019-12-31 | 2020-05-29 | Oppo广东移动通信有限公司 | 动态壁纸设置方法、装置、存储介质及电子设备 |
CN111240777A (zh) * | 2019-12-31 | 2020-06-05 | Oppo广东移动通信有限公司 | 动态壁纸生成方法、装置、存储介质及电子设备 |
CN111240776A (zh) * | 2019-12-31 | 2020-06-05 | Oppo广东移动通信有限公司 | 动态壁纸设置方法、装置、存储介质及电子设备 |
CN114510307A (zh) * | 2022-01-28 | 2022-05-17 | 统信软件技术有限公司 | 一种动态壁纸实现方法、计算设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9389884B2 (en) * | 2012-10-11 | 2016-07-12 | Google Technology Holdings LLC | Method and apparatus for providing adaptive wallpaper display for a device having multiple operating system environments |
-
2022
- 2022-09-13 CN CN202211118962.8A patent/CN116743908B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101032184A (zh) * | 2004-09-29 | 2007-09-05 | 株式会社爱可信 | 移动通信设备和用于移动通信设备的应用执行环境软件 |
CN103037105A (zh) * | 2012-12-24 | 2013-04-10 | 广东欧珀移动通信有限公司 | 一种用户终端设备自动更换主题的方法及用户终端设备 |
WO2016168961A1 (zh) * | 2015-04-20 | 2016-10-27 | 华为技术有限公司 | 智能终端主题更换方法及装置 |
CN109739590A (zh) * | 2018-05-14 | 2019-05-10 | 北京字节跳动网络技术有限公司 | 一种桌面壁纸更换方法、装置及设备 |
CN111209063A (zh) * | 2018-11-22 | 2020-05-29 | 珠海格力电器股份有限公司 | 一种桌面主题预览方法、系统及智能终端 |
CN110187808A (zh) * | 2019-05-30 | 2019-08-30 | 努比亚技术有限公司 | 动态壁纸设置方法、装置及计算机可读存储介质 |
CN110209460A (zh) * | 2019-06-10 | 2019-09-06 | Oppo广东移动通信有限公司 | 一种动态壁纸的实现方法、装置、存储介质及终端 |
CN110688179A (zh) * | 2019-08-30 | 2020-01-14 | 华为技术有限公司 | 一种显示方法及终端设备 |
CN111209065A (zh) * | 2019-12-31 | 2020-05-29 | Oppo广东移动通信有限公司 | 动态壁纸设置方法、装置、存储介质及电子设备 |
CN111240777A (zh) * | 2019-12-31 | 2020-06-05 | Oppo广东移动通信有限公司 | 动态壁纸生成方法、装置、存储介质及电子设备 |
CN111240776A (zh) * | 2019-12-31 | 2020-06-05 | Oppo广东移动通信有限公司 | 动态壁纸设置方法、装置、存储介质及电子设备 |
CN114510307A (zh) * | 2022-01-28 | 2022-05-17 | 统信软件技术有限公司 | 一种动态壁纸实现方法、计算设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
壁纸自动换 每天都有新感觉;樊旭峰;;电脑迷(16);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116743908A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108845856B (zh) | 基于对象的同步更新方法、装置、存储介质及设备 | |
CN104281478B (zh) | 更新应用程序的方法及装置 | |
CN116560771A (zh) | 一种应用执行绘制操作的方法及电子设备 | |
CN116450251A (zh) | 一种适配多设备的页面布局的方法及电子设备 | |
WO2022057889A1 (zh) | 一种对应用程序的界面进行翻译的方法及相关设备 | |
CN114327175B (zh) | 一种信息分享方法及设备 | |
EP4468690A1 (en) | Window display method and related apparatus | |
CN116743908B (zh) | 壁纸显示方法及相关装置 | |
CN116700601B (zh) | 内存优化方法、设备及存储介质 | |
CN115017487B (zh) | 一种电子设备登录账号的切换方法及电子设备 | |
US20240220184A1 (en) | Screen projection method and related apparatus | |
CN114443117B (zh) | 一种定制包的处理方法及电子设备 | |
CN115543276A (zh) | 一种用于实现软件开发的方法、系统以及电子设备 | |
CN113822011A (zh) | 字体切换方法及电子设备 | |
WO2024055875A1 (zh) | 服务卡片的添加方法、电子设备及计算机可读存储介质 | |
CN114816169B (zh) | 桌面图标的显示方法、设备及存储介质 | |
CN116048685B (zh) | 杂志锁屏的显示方法、图形界面及电子设备 | |
CN116708888B (zh) | 视频录制方法及相关装置 | |
CN116737291B (zh) | 桌面应用的处理方法和电子设备 | |
CN119271316A (zh) | 界面显示方法及相关装置 | |
CN117971305B (zh) | 操作系统的升级方法、服务器及电子设备 | |
CN116700740B (zh) | 软件修复方法和相关装置 | |
WO2023020339A1 (zh) | 界面显示方法及电子设备 | |
WO2024037346A1 (zh) | 页面管理方法及电子设备 | |
WO2023169276A1 (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 | ||
CP03 | Change of name, title or address |
Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee after: Honor Terminal Co.,Ltd. Country or region after: China Address before: 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong Patentee before: Honor Device Co.,Ltd. Country or region before: China |