CN107484022B - Android智能电视上实现***全局屏保的方法 - Google Patents
Android智能电视上实现***全局屏保的方法 Download PDFInfo
- Publication number
- CN107484022B CN107484022B CN201710667726.4A CN201710667726A CN107484022B CN 107484022 B CN107484022 B CN 107484022B CN 201710667726 A CN201710667726 A CN 201710667726A CN 107484022 B CN107484022 B CN 107484022B
- Authority
- CN
- China
- Prior art keywords
- screen saver
- application
- wakelock
- needs
- time
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4436—Power management, e.g. shutting down unused components of the receiver
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种Android智能电视上实现***全局屏保的方法,包括:首先是针对Android Wakelock机制的修改,在wakelock机制下增加全局屏保的启动和消失的功能;其次,增加屏保计时机制;再次,在屏保出现后,设定屏保消失的机制。本发明解决了电视屏保和应用场景的融合问题,通过应用场景和***状态综合确定屏保的出现和消失流程。实现了电视应用个场景下都能合理的出现和消失屏保,提供了更好的用户体验,也为屏保运营提供了技术基础。
Description
技术领域
本发明涉及一种智能电视屏保的实现方法,具体涉及一种Android智能电视上实现***全局屏保的方法,属于智能电视技术领域。
背景技术
当前Android智能电视的屏保程序仅支持在个别场景下实现,如电视无信号状态,且屏保的启动和消失是通过Android***单一判断电视信号源接口或者***屏保指令,然后通过屏保程序统计用户无按键操作时间来触发屏保。当前的屏保技术无法和实际应用场景关联,无法让应用主动设置屏保的状态来确定屏保的启动和消失,也没法实现和***当前音视频状态的融合,综合实现屏保的触发机制。这样就导致屏保程序应用场景具有很大的局限性。无法实现屏保的有效运营,也没法给用户提供更好的用户体验。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种能够在智能电视所有的应用场景都可以实现屏保功能的方法。
为了具体说明本发明的技术方案,需要对Android***的wakelock机制做一个介绍。
wakelock是一种锁的机制,可以理解为只要有人拿着这个锁,***就无法进入休眠,锁可以被用户态程序和内核获得。这个锁可以是有超时的或者是没有超时的,超时的锁会在时间过去以后自动解锁。如果没有锁了或者超时了,内核就会启动休眠的机制来进入休眠。PowerManage提供了wakelock相关的接口来操作wakelock锁,比如newWakeLock()方法来创建wakelock锁,acquire()和release()方法来申请和释放锁。只要有应用拿着这个锁,***就不能进入休眠状态,在上层不同的应用程序可以持有多个不同的wakelock锁来通知***当前期望的***状态。
针对全局屏保的功能定义和需求,通过Android的wakelock机制和***当前状态融合定制,采取如下的技术方案来实现***Android智能电视上全局屏保的功能。
本发明具体是这样实现的:
一种Android智能电视上实现***全局屏保的方法,包括:
首先是针对Android Wakelock机制的修改,在wakelock机制下增加全局屏保的启动和消失的功能;
其次,增加屏保计时机制;
再次,在屏保出现后,设定屏保消失的机制。
更进一步的方案是:
针对Android Wakelock机制的修改,具体为:
对mProximityPositive、mUserActivitySummary、mDockState、mWakeLockSummary状态的判断来保证和***休眠功能不发送冲突;也就是让wakelock机制可以同时支持***休眠和全局屏保功能,并且需要把待机功能和屏保结合以达到节能的目的。
更进一步的方案是:
增加屏保计时机制,具体为:
屏保机制不仅有统计用户无操作的时间,还需要融合对***消息推送事件进去统计;屏保的出现的时间通过应用预设;
在***成功初始化PowerManager模块后即启动屏保计时,如果有输入事件、***级消息弹框事件、音视频推送事件、应用刷新事件发生,通过userActivity接口通知屏保计时机制重新开始计时,以确保屏保的出现不会影响用户当前的使用;屏保消失后立即重新计时;当达到设置的屏保时间后需要综合应用和***状态进行综合判定;应用通过定制后的Wakelock机制,根据实际的应用场景通过PowerManager的acquire()和release()方法通知***框架层期望屏保的状态;***框架层通过wakelock锁获取到应用期望的状态后,通过mWakeLockSummary变量记录下此状态;当屏保计时机制通知***屏保时间已经满足后,***首先需要判断记录的应用设置的wakelock状态,如果mWakeLockSummary为FULL_WAKE_LOCK那么表示当前应用不希望屏保出现,那么在屏保时间满足后就需要阻住屏保出现并重新下一次计时;如果***没有记录到wakelock的状态,那么表示应用希望屏保出现,***需要进一步通过电视视频和音频播放接口判断当前电视是否在进行视频播放或者音频播放,如果在进行播放,需要***阻止屏保出现并重新下一次计时;如果没有进行播放,需要***启动屏保,在启动屏保之前需要调用***TV接口,给屏保应用传入在屏保下无操作和消息输入的情况下转为待机的时间。
更进一步的方案是:
设定屏保消失的机制,具体为:
当接收到***输入事件,退出屏保并执行对应功能;
当***收到视频、图片和音频的推送事件也需要退出屏保;
当屏保持续的时间已经达到***预设的时间后,从节能的角度考虑,需要调用待机接口让电视进入待机状态。
更进一步的方案是:
所述***输入事件包括:菜单键、主页键、鼠标事件、键盘事件。
本发明提出一种在智能电视实现***全局屏保的方法,所谓全局屏保,即是在电视所有的应用场景都可以显示的屏保。在不影响Android锁屏流程的情况下,电视各个应用场景通过WAKELOCK机制与Android***框架层交互,向***设置期望的屏保状态,Android***框架层通过对当前***音视频播状态以及应用设置的Wakelock锁,综合判断后实现在不同的应用场景下适时的出现,消失屏保。达到让应用和***共同合理的来确定屏保的触发和消失,以解决以前屏保触发机制单一和不够灵活的问题。
本发明解决了电视屏保和应用场景的融合问题,通过应用场景和***状态综合确定屏保的出现和消失流程。实现了电视应用个场景下都能合理的出现和消失屏保,提供了更好的用户体验,也为屏保运营提供了技术基础。
附图说明
图1为***对屏保启动和消失的逻辑判断;
图2为***启动屏保和退出屏保的具体实施流程示意图。
具体实施方式
下面结合附图对本发明作进一步的说明。
本发明公开的Android智能电视上实现***全局屏保的方法,具体为:
首先是针对Android Wakelock机制的定制修改,Android原生的wakelock机制是和***休眠绑定,所以我们需要在wakelock机制下增加全局屏保的启动和消失的功能。通过对mProximityPositive、mUserActivitySummary、mDockState、mWakeLockSummary等状态的判断来保证和***休眠功能不发送冲突。也就是让wakelock机制可以同时支持***休眠和全局屏保功能,并且需要把待机功能和屏保结合以达到节能的目的。
然后需要增加屏保计时机制,新的屏保机制不仅有统计用户无操作的时间,还需要融合对***消息推送事件进去统计。屏保的出现的时间需要通过应用预设。在***成功初始化PowerManager模块后即启动屏保计时,如果有输入事件、***级消息弹框事件、音视频推送事件、应用刷新等事件发生,需要通过userActivity接口通知屏保计时机制重新开始计时,以确保屏保的出现不会影响用户当前的使用。屏保消失后需要立即重新计时。当达到设置的屏保时间后需要综合应用和***状态进行综合判定。应用通过定制后的Wakelock机制,根据实际的应用场景通过PowerManager的acquire()和release()方法通知***框架层期望屏保的状态。***框架层通过wakelock锁获取到应用期望的状态后,通过mWakeLockSummary变量记录下此状态。当屏保计时机制通知***屏保时间已经满足后,***首先需要判断记录的应用设置的wakelock状态,如果mWakeLockSummary为FULL_WAKE_LOCK那么表示当前应用不希望屏保出现,那么我们在屏保时间满足后就需要阻住屏保出现并重新下一次计时。如果***没有记录到wakelock的状态,那么表示应用希望屏保出现,***需要进一步通过电视视频和音频播放接口判断当前电视是否在进行视频播放或者音频播放,如果在进行播放,需要***阻止屏保出现并重新下一次计时。如果没有进行播放,需要***启动屏保,在启动屏保之前需要调用***TV接口,给屏保应用传入在屏保下无操作和消息输入的情况下转为待机的时间。
最后如果屏保出现后,***需要通过下面几种方式来消失屏保,当接收到***输入事件如菜单键、主页键、鼠标事件、键盘事件等,退出屏保并执行对应功能。当***收到视频、图片和音频的推送事件也需要退出屏保。当屏保持续的时间已经达到***预设的时间后,从节能的角度考虑,需要调用待机接口让电视进入待机状态。
如附图2所示,本发明的更具体的实施方式是:
1、屏保计时模块在初始化时先读取由用户通过应用设置的屏保时间,具体由应用通过ch_screensaver_time变量向Powermanager设置。然后在接受到***PowerManager启动成功的消息后,开始计时,如果有输入事件和消息推送等时机发生就重新计时。
2、应用通过对场景的判断,确定是否需要屏保出现,不需要屏保出现就调用PowerManager的Acquire()方法持有FULL_WAKE_LOCK锁。如果持有了FULL_WAKE_LOCK锁,那么在场景需要屏保出现的时候,需要调用release()方法释放掉FULL_WAKE_LOCK锁。这样就完成了应用向***报告当前自己期望的屏保状态。
3、如果PowerManager读取到当前屏保时间已经满足,就调用updateDreamLocked方法开始屏保是否出现的判断流程,如附图1所示,首先需要判断应用场景的wakelock锁是否期望屏保出现,如果期望出现,进一步调用isSignalStable()和isMusicActive()接口判断当前***是否在进行音视频的播放,如果没有进行播放。则调用DreamService的接口启动屏保应用,同时调用***TV接口设置屏保转为待机的时间。
4、启动屏保之前***通过getCurInputSource判断当前信号源给屏保应用传入屏保最多出现的时间,例如ATV下最多持续15分钟,VGA下最多持续30秒。当屏保持续的时间达到***设置的时间后,屏保应用调用shutdown接口让整机进入待机状态。
5、当前处于屏保状态,如果有输入事件发生,需要在phonewindowmanager拦截按键的接口处调用Powermanager的屏保消失接口,如果有消息推送事件发生则在windowmanager拦截消息的接口处调用屏保消失的接口。保证用户和***能正常解除屏保。屏保解除后通过调用updatePowerStateLocked接口继续下一次屏保触发的计时。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。
Claims (3)
1.一种Android智能电视上实现***全局屏保的方法,其特征在于包括:
首先是针对Android Wakelock机制的修改,在wakelock机制下增加全局屏保的启动和消失的功能;针对Android Wakelock机制的修改,具体为:
对mProximityPositive、mUserActivitySummary、mDockState、mWakeLockSummary状态的判断来保证和***休眠功能不发送冲突;也就是让wakelock机制可以同时支持***休眠和全局屏保功能,并且需要把待机功能和屏保结合以达到节能的目的;
其次,增加屏保计时机制;增加屏保计时机制,具体为:
屏保机制不仅有统计用户无操作的时间,还需要融合对***消息推送事件进去统计;屏保的出现的时间通过应用预设;
在***成功初始化PowerManager模块后即启动屏保计时,如果有输入事件、***级消息弹框事件、音视频推送事件、应用刷新事件发生,通过userActivity接口通知屏保计时机制重新开始计时,以确保屏保的出现不会影响用户当前的使用;屏保消失后立即重新计时;当达到设置的屏保时间后需要综合应用和***状态进行综合判定;应用通过定制后的Wakelock机制,根据实际的应用场景通过PowerManager的acquire()和release()方法通知***框架层期望屏保的状态;***框架层通过wakelock锁获取到应用期望的状态后,通过mWakeLockSummary变量记录下此状态;当屏保计时机制通知***屏保时间已经满足后,***首先需要判断记录的应用设置的wakelock状态,如果mWakeLockSummary为FULL_WAKE_LOCK那么表示当前应用不希望屏保出现,那么在屏保时间满足后就需要阻住屏保出现并重新下一次计时;如果***没有记录到wakelock的状态,那么表示应用希望屏保出现,***需要进一步通过电视视频和音频播放接口判断当前电视是否在进行视频播放或者音频播放,如果在进行播放,需要***阻止屏保出现并重新下一次计时;如果没有进行播放,需要***启动屏保,在启动屏保之前需要调用***TV接口,给屏保应用传入在屏保下无操作和消息输入的情况下转为待机的时间;
再次,在屏保出现后,设定屏保消失的机制。
2.根据权利要求1所述Android智能电视上实现***全局屏保的方法,其特征在于:
设定屏保消失的机制,具体为:
当接收到***输入事件,退出屏保并执行对应功能;
当***收到视频、图片和音频的推送事件也需要退出屏保;
当屏保持续的时间已经达到***预设的时间后,从节能的角度考虑,需要调用待机接口让电视进入待机状态。
3.根据权利要求2所述Android智能电视上实现***全局屏保的方法,其特征在于:所述***输入事件包括:菜单键、主页键、鼠标事件、键盘事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710667726.4A CN107484022B (zh) | 2017-08-07 | 2017-08-07 | Android智能电视上实现***全局屏保的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710667726.4A CN107484022B (zh) | 2017-08-07 | 2017-08-07 | Android智能电视上实现***全局屏保的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107484022A CN107484022A (zh) | 2017-12-15 |
CN107484022B true CN107484022B (zh) | 2020-06-30 |
Family
ID=60598818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710667726.4A Active CN107484022B (zh) | 2017-08-07 | 2017-08-07 | Android智能电视上实现***全局屏保的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107484022B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463267B (zh) * | 2019-09-06 | 2023-04-14 | 海信视像科技股份有限公司 | 在显示设备屏幕上呈现屏保信息的方法及显示设备 |
CN113157364A (zh) * | 2021-03-25 | 2021-07-23 | 广州文石信息科技有限公司 | 一种屏保显示方法和装置 |
CN113377474B (zh) * | 2021-06-10 | 2023-06-13 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种屏保显示方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1517862A (zh) * | 2003-01-15 | 2004-08-04 | Lg电子株式会社 | 提供屏幕保护预警的方法及显示设备 |
CN1547391A (zh) * | 2003-12-02 | 2004-11-17 | 深圳创维-Rgb电子有限公司 | 电视机智能提示的方法 |
CN102402424A (zh) * | 2010-09-08 | 2012-04-04 | 鸿富锦精密工业(深圳)有限公司 | 屏幕保护***及方法 |
CN102968174A (zh) * | 2012-11-06 | 2013-03-13 | 珠海全志科技股份有限公司 | 安卓设备深层睡眠唤醒方法 |
CN106713982A (zh) * | 2016-12-23 | 2017-05-24 | Tcl集团股份有限公司 | 一种智能电视的屏幕保护方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015047312A1 (en) * | 2013-09-27 | 2015-04-02 | Intel Corporation | Techniques for tracing wakelock usage |
-
2017
- 2017-08-07 CN CN201710667726.4A patent/CN107484022B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1517862A (zh) * | 2003-01-15 | 2004-08-04 | Lg电子株式会社 | 提供屏幕保护预警的方法及显示设备 |
CN1547391A (zh) * | 2003-12-02 | 2004-11-17 | 深圳创维-Rgb电子有限公司 | 电视机智能提示的方法 |
CN102402424A (zh) * | 2010-09-08 | 2012-04-04 | 鸿富锦精密工业(深圳)有限公司 | 屏幕保护***及方法 |
CN102968174A (zh) * | 2012-11-06 | 2013-03-13 | 珠海全志科技股份有限公司 | 安卓设备深层睡眠唤醒方法 |
CN106713982A (zh) * | 2016-12-23 | 2017-05-24 | Tcl集团股份有限公司 | 一种智能电视的屏幕保护方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN107484022A (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105916010B (zh) | 一种智能电视的待机及唤醒方法及装置 | |
CN107484022B (zh) | Android智能电视上实现***全局屏保的方法 | |
CN106686257B (zh) | 一种移动终端的控制方法、装置及移动终端 | |
CN111510781A (zh) | 显示设备待机的控制方法及显示设备 | |
US9015777B2 (en) | System and method for dynamic bandwidth allocation | |
US20170142326A1 (en) | Image capture method and apparatus | |
CN111683279B (zh) | 显示设备及图像恢复方法 | |
CN108040292B (zh) | 电视待机开机方法、电视及计算机可读存储介质 | |
CN105872768A (zh) | 显示终端信源切换方法及装置 | |
CN106686446B (zh) | 内容投射方法及移动终端 | |
CN104052909A (zh) | 拍摄方法和装置 | |
CN106921892B (zh) | 在线视频播放方法及装置 | |
US20100131682A1 (en) | Electronic device and method for automatically controlling operation of the electronic device | |
CN107105346A (zh) | 一种智能电视待机的控制方法及*** | |
CN114302238B (zh) | 一种音箱模式下提示信息的展示方法及显示设备 | |
WO2016029717A1 (zh) | 一种机顶盒及其降低功耗的方法、计算机存储介质 | |
CN103024513B (zh) | 一种数字电视快速换台的方法 | |
WO2022188475A1 (zh) | 一种视频文件的双屏同步播放方法及显示设备 | |
WO2016086663A1 (zh) | 应用切换处理方法、装置及智能机顶盒设备 | |
CN103503379A (zh) | 提供内容的无中断回放的媒体再现设备 | |
CN115097926A (zh) | 投屏方法、装置、设备、***及存储介质 | |
CN104066011A (zh) | 智能电视的界面切换的控制方法和控制装置 | |
CN109005455B (zh) | 视频数据处理方法及装置 | |
CN105592361A (zh) | 一种机顶盒后台程序清理方法、装置及*** | |
CN109145273A (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 |