我有一個Activity
,通常需要一些時間來觀看屏幕,而無需與屏幕交互。如何防止在執行活動期間關閉android設備的屏幕?
問題是,屏幕關閉,就像almos任何其他應用程序。 我想阻止我的Activity
自動關閉,就像Dolphin HD一樣(如果您從設置菜單進行配置)。
我想讓用戶關閉屏幕按通常的阻止按鈕,但防止在我的Activity
設備的自動阻止。
我該如何做到這一點?
Thanx。
我有一個Activity
,通常需要一些時間來觀看屏幕,而無需與屏幕交互。如何防止在執行活動期間關閉android設備的屏幕?
問題是,屏幕關閉,就像almos任何其他應用程序。 我想阻止我的Activity
自動關閉,就像Dolphin HD一樣(如果您從設置菜單進行配置)。
我想讓用戶關閉屏幕按通常的阻止按鈕,但防止在我的Activity
設備的自動阻止。
我該如何做到這一點?
Thanx。
將android:keepScreenOn="true"
添加到此活動的佈局XML資源中的某個窗口小部件。只要該小部件在屏幕上可見,屏幕就不會自動關閉。
編輯:
一個WakeLock
,通過其他的答案的建議,在技術上將工作。但是,你必須手動釋放WakeLock
(如果你搞砸了,屏幕會保持很長時間)。而且,由於您可能會將搞亂,您需要WAKE_LOCK
權限。使用keepScreenOn
可以避免所有這些。
你的意思是小部件的意義「小部件組件」?還是一些看法? – Gangnus 2012-02-17 22:00:54
Thanx的答案,工作得很好:)我認爲wakelock可能是一個好方法,但這一個更容易。 – Alex 2012-02-17 22:29:27
我試圖將這個屬性添加到一個視圖中,該視圖位於最初爲GONE的片段內,並被應用程序中的代碼設置爲可見。這不起作用:屏幕仍然關閉。 「noelicus」的答案效果很好。 – treesAreEverywhere 2014-05-12 14:33:22
您需要將WAKE_LOCK添加到您的清單中,並根據需要在您的應用程序中進行設置和刪除。 看到谷歌文檔這裏PowerManager.WAKE_LOCK
http://developer.android.com/reference/android/os/PowerManager.html
Thanx的答案,這是有用的 – Alex 2012-02-17 22:31:49
您可能需要使用喚醒鎖,以防止屏幕off.Pleas參考http://developer.android.com/reference/android/os/PowerManager.WakeLock.html
Thanx的答案和鏈接到文檔,其總是很好理解如何做這種事情,但這次我想我會使用@CommonsWare解決方案:P – Alex 2012-02-17 22:31:29
要改變它的飛行做到這一點:
if (keepScreenOn)
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
else
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
你正在尋找的東西是[wakelock](http://developer.android.com/reference/android/os/PowerManager.html)。 – 2012-02-17 21:52:25
@alextsc:實際上,對於用戶界面,有一個更好的答案。 – CommonsWare 2012-02-17 21:53:36