我實現了一個應用程序,它可以正常工作。現在我想知道如何防止睡覺手機,而特定的應用程序正在運行。我嘗試使用實現清醒鎖定現在我想給定的時間運行屏幕保護程序後實施,並再次觸摸屏運行當前應用程序properly.Because使用清醒鎖電話清醒,直到應用run.But用戶離開過一段時間我想運行屏幕保護程序,直到重新開始手機在運行應用程序時醒來
回答
保持畫面On
The最好的方法是在你的活動中使用FLAG_KEEP_SCREEN_ON。
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
來實現,這是在應用程序的佈局XML文件中,通過使用Android的另一種方式:keepScreenOn屬性:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:keepScreenOn="true">
...
</RelativeLayout>
保持CPU在
如果你需要保持爲了在設備進入睡眠狀態之前完成一些工作,CPU正在運行,您可以使用稱爲喚醒鎖的PowerManager系統服務功能。喚醒鎖定允許您的應用程序控制主機設備的電源狀態。
創建和保持喚醒鎖可能會對主機設備的電池壽命產生巨大影響。因此,只有在嚴格需要的情況下才應使用喚醒鎖,並儘可能縮短時間。例如,您絕不應該在活動中使用喚醒鎖。如上所述,如果您想讓屏幕保持在您的活動中,請使用FLAG_KEEP_SCREEN_ON。
一個合法的情況下使用喚醒鎖可能是需要搶喚醒鎖保持運行做工作,而屏幕關閉CPU的後臺服務。不過,這種做法應該儘量減少,因爲它會影響電池壽命。
要使用喚醒鎖,第一步是將WAKE_LOCK權限添加到您的應用程序的清單文件:
<uses-permission android:name="android.permission.WAKE_LOCK" />
如果您的應用程序包括使用服務做了一些工作的廣播接收器,就可以通過WakefulBroadcastReceiver管理您的喚醒鎖,如使用WakefulBroadcastReceiver中所述。這是首選的方法。如果您的應用程序不遵循這一模式,這裏是你如何直接設置喚醒鎖:
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
"MyWakelockTag");
wakeLock.acquire();
要解除鎖定之後,調用wakelock.release().
這將釋放你的要求給CPU。一旦應用程序完成使用後釋放喚醒鎖定非常重要,以避免電池電量耗盡。
這有助於我獲得正確的idea.thanks !! – Kushan
在您的清單中添加該權限:
<uses-permission android:name="android.permission.WAKE_LOCK" />
而在你的onCreate補充一點:
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
- 1. S40手機的提醒應用程序
- 2. 當WPF應用程序正在運行時保持Windows醒來
- 3. 在手機醒來時Application_Activated中的代碼不運行
- 4. 來自Django/Python應用程序的智能手機提醒
- 5. 如何在應用程序運行時禁用手機鍵盤?
- 6. execSQL在手機上運行應用程序時出錯
- 7. 當在手機上運行時,應用程序「意外停止」
- 8. 在手機上運行應用程序時不顯示紋理
- 9. Android studio在運行應用程序時不顯示手機
- 10. 如何在手機開機時在後臺永久運行Android應用程序?
- 11. 手機連接到PC時的自動運行應用程序
- 12. 窗口手機應用程序運行時錯誤
- 13. 運行我的應用程序時手機會變熱
- 14. 我試圖在手機上使用手機運行Android應用程序
- 15. 在通過Xcode進行調試時手動運行應用程序vs手動運行應用程序
- 16. 如何在手機待機時繼續運行我的Android應用程序?
- 17. 定時器任務僅在手機醒來時才起作用
- 18. 無法在Redmi手機上運行react-native應用程序?
- 19. 在越獄手機中運行應用程序
- 20. 在手機上運行的GWT應用程序
- 21. JavaFX應用程序可以在手機上運行嗎?
- 22. WP8應用程序可以在WP8.1手機上運行嗎?
- 23. 無法在手機上運行Android應用程序
- 24. 團隊無法在手機上運行iOS應用程序
- 25. 在手機上運行AIR Mobile AS3應用程序?
- 26. 如何在手機上運行簡單的android應用程序?
- 27. 未能在我的手機上運行Flex應用程序
- 28. Eclipse未在Android手機上運行應用程序
- 29. 在手機上運行的Android應用程序問題
- 30. 在後臺運行的Windows手機應用程序
它不明白你想要什麼。使用'WakeLock'可以使設備在運行應用程序時保持清醒狀態。 –
你想保持應用程序運行,或者你想防止屏幕關閉嗎? – RvdK
讓應用程序繼續運行 – Kushan