Android 如何使用后台运行应用程序保持屏幕正常?

Android 如何使用后台运行应用程序保持屏幕正常?,android,service,screen,wakelock,android-wake-lock,Android,Service,Screen,Wakelock,Android Wake Lock,我需要制作一个即使在后台运行也能保持屏幕打开的应用程序 我试过: getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 但它只在应用程序正在运行且不能作为服务运行时才起作用 我也尝试过wakelocks,但SCREEN_BRIGHT_WAKE_LOCK和FULL_WAKE_LOCK都被弃用。只剩下部分唤醒锁定 是否有办法使用部分唤醒锁定、获取原因唤醒和一些循环来保持屏幕打开 坦白地说,我没有Java或

我需要制作一个即使在后台运行也能保持屏幕打开的应用程序

我试过:

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
但它只在应用程序正在运行且不能作为服务运行时才起作用

我也尝试过wakelocks,但SCREEN_BRIGHT_WAKE_LOCK和FULL_WAKE_LOCK都被弃用。只剩下部分唤醒锁定

是否有办法使用部分唤醒锁定、获取原因唤醒和一些循环来保持屏幕打开


坦白地说,我没有Java或应用程序开发的实际经验,我作为实习生被分配了这项任务,因此,如果有任何帮助,我将不胜感激。

回答是不,你不能。正如您所说,唯一的方法是使用不推荐的api。作为替代方案,您可以使用具有透明主题的活动,但如果用户(例如)按下“主页”按钮,并且该活动不再位于前台,您仍然会松开。

我的主管告诉我,他们目前正在使用一个应用程序来执行此操作,但由于许可问题,不能再使用了,所以一定有办法吗?是否可以使用不推荐使用的api并创建一个仍然可以在设备上运行的应用程序?是的,您可以使用不推荐使用的api,但您不知道该行为将来是否会更改,或者调用是否会从下一版本中删除。您可以使用它们,但最终无需任何保修。