色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

java - 安卓實現(xiàn)熄屏功能。

瀏覽:94日期:2024-01-09 11:28:17

問題描述

在APP中定義一個時間(假設(shè)為5分鐘),記錄兩次操作APP之間的時間間隔,如果大于之前定義的時間,則APP端實現(xiàn)發(fā)出命令,手機屏幕熄滅。該功能要如何實現(xiàn)?

問題解答

回答1:

第一點是鎖屏這個功能吧,可以參考:https://github.com/chniccs/Lo...這個小項目就是鎖屏功能的實現(xiàn),代碼量很少。

另外一點就是看你怎么定義每次操作,這里將把一個activity顯示到前臺當(dāng)作一次操作,你也可以重寫觸摸監(jiān)聽去定義一些觸摸操作為一次操作。1、寫個BaseActivity,在onResume(這里用這個代表一次操作)中發(fā)出一個延時消息(廣播或者其它handler),并記錄當(dāng)前時間(存儲在自定義Application中或者一個全局單例或者持久化存儲)2、根據(jù)前面發(fā)送延時消息的方式,如廣播,在收到發(fā)出的廣播消息后,取當(dāng)前時間值與 1 步中記錄的時間值進行比較,如果小于定義的時間值,則再次取兩次時間值(存儲的與當(dāng)前的)的差值作為延時再發(fā)出一個廣播。當(dāng)下次再收到廣播時,再進行判斷,如果大于等于時間值,就調(diào)用鎖屏。

說明:第 2 步中為什么要取差值而不是重新發(fā)一個固定延時的廣播,這是因為在第一次發(fā)送廣播后,可能你會進行一些操作,這些操作就后續(xù)的,也就是說當(dāng)你收到延時廣播時,最后一次操作的時間并不是發(fā)送廣播時記錄的時間,而是真實最后一次操作的時間。所以在每次操作后都需要對記錄的時間值進行更新操作。

差值計算:定義的無操作固定最大時間 - (當(dāng)前時間 - 最后一次操作時間)

回答2:

采用Handler的postDelayed(Runnable, long)方法1.定義一個Handler類

Handler handler=new Handler(); Runnable runnable=new Runnable() { @Override public void run() { // TODO Auto-generated method stub //要做的事情 handler.postDelayed(this, 2000); } };

2.啟動計時器

handler.postDelayed(runnable, 2000);

3.停止計時器

handler.removeCallbacks(runnable);

大概就是這么一個路數(shù)吧,時間自己決定咯

標簽: java
相關(guān)文章:
主站蜘蛛池模板: 美女视频永久黄网站免费观看韩国 | 人久热欧美在线观看量量 | 欧美成a人片在线观看久 | 思99re久久这里只有精品首页 | 久草免费福利 | 91久久99久91天天拍拍 | 久久有精品 | 亚洲成a人片在线观看中 | 亚洲国产高清一区二区三区 | 国产精品久久久久久一区二区三区 | 国产精品分类视频分类一区 | 亚洲男人天堂 | 三级网站免费观看 | 久久精品成人国产午夜 | 精品久久久久久免费影院 | 欧美成人xxxx | 国产日韩精品一区在线观看播放 | 国产在视频线精品视频www666 | 精品久久久久国产免费 | 99久久精品免费看国产一区二区 | 亚洲欧美日韩中文字幕在线一区 | 国产免费资源 | 欧美精品一区二区三区在线 | 无遮挡一级毛片私人影院 | 国产人成免费视频 | 久久福利青草精品资源 | 久久久精品在线观看 | 亚欧国产 | 国产久草视频在线 | 精品三级内地国产在线观看 | 国产亚洲一区二区手机在线观看 | 国产1区2区三区不卡 | 91精品91久久久久久 | 亚洲美女视频网站 | 一级成人| 欧美日韩在线视频免费完整 | 国产99久久久久久免费看 | 亚洲综合第一欧美日韩中文 | 在线视频免费观看a毛片 | 久久不见久久见免费影院www日本 | 国产成人免费在线 |