gpt4 book ai didi

android - 检查是否从用户交互或屏幕调暗调用了 onStop

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:12:57 26 4
gpt4 key购买 nike

我有一个媒体播放器,它会在用户关闭应用程序时停止播放,方法是按下主页按钮、使用后退按钮或只是打开另一个应用程序。为获得此行为,我向我的主要 Activity 添加了一个 onStop(),它告诉我的 MediaPlayer(在服务中)停止播放音乐。

但是,我希望在屏幕变暗时继续播放音乐,方法是使用电源按钮关闭屏幕,或者只是通过屏幕自动变暗。

现在播放器也会在屏幕变暗时停止播放,这意味着 onStop() 方法也会在那时被调用。

如何检查屏幕调暗是否调用了 onStop()?

我已经将 PARTIAL_WAKELOCK 应用于我的 MediaPlayer 对象,据我所知,这应该可以让播放器在屏幕关闭后继续运行.

我是否还需要为我的主要 Activity 添加部分唤醒锁?


刚刚将 PARTIAL_WAKELOCK 应用于我的主要 Activity 以及我的媒体播放器。现在,屏幕不再自动关闭,当用户按下电源按钮时,音乐仍然停止。

显然,这并不像我想象的那样有效。

有什么方法可以实现我正在寻找的行为吗?

最佳答案

可以添加

private boolean stoppedByUser = false;

字段到您的 Activity ,在 onStart() 中将其设置为 false,在 onBackPressed() 中将其设置为 trueonUserLeaveHint()并在 onStop() 方法中检查它的值。

关于android - 检查是否从用户交互或屏幕调暗调用了 onStop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9002491/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com