Android:相当于 onPause 的任务或应用程序
Posted
技术标签:
【中文标题】Android:相当于 onPause 的任务或应用程序【英文标题】:Android: Task or application equivalent of onPause 【发布时间】:2010-12-16 14:47:58 【问题描述】:我的应用程序使用远程服务来播放音频。我这样做是为了 没有活动拥有音频的播放 - 用户可以触发一些 要从一个 Activity 播放音频,并且音频将继续播放 在他们浏览应用程序时播放。但是,我确实想告诉 当用户“卸载”应用程序时暂停或停止播放音频的服务 通过退出、锁定显示屏或点击主页。当应用程序是单一的 活动,我在 onPause 中执行此操作。所以,我想我本质上是 在应用程序/任务级别寻找“onPause”。做这种事 存在?如果没有,获得通知的“最佳实践”方式是什么 该任务已被用户搁置,要么支持所有 出路还是回家?
【问题讨论】:
【参考方案1】:嗯...不幸的是,我怀疑那里没有简单的答案。我认为这就是为什么内置媒体播放器和 Pandora 使用通知来轻松让用户回到应用程序使其关闭。
如果您的活动流相当线性,则退出应用程序与退出初始活动相同。
我在一个场景中使用的一个技巧是让每个活动通知onPause()
和onResume()
中的服务。该服务将监控这些,如果它在一段时间内收到onPause()
而没有随后的onResume()
,则假定用户已离开(家庭、来电、传入短信、通过通知等)。
您还可以观看ACTION_SCREEN_OFF
广播Intents
,以处理这种情况。
很抱歉,我没有更好的灵丹妙药答案——也许其他人会有更好的主意。
【讨论】:
这些是一些创造性的解决方案。我有一个类似的问题,如果回答可以与您的解决方案相结合,对我来说是完美的。我可能也会选择 ACTION_SCREEN_OFF ......很好的建议。请让我知道您对以下内容的看法:***.com/questions/1735245/… 谢谢! 对不起,我不会弄乱活动堆栈。 不用担心。我的解决方案最终将成为您建议的其中一种(通知如 Pandora 或在服务中保持活动状态并收听适当的广播)。【参考方案2】:我的情况有点类似,基本上我按照马克的建议做了;我只是让服务计算对我的 registerCallback() 和 unregisterCallback() API 的调用,而不是单独的通知,这是每个活动都需要执行的操作。
【讨论】:
以上是关于Android:相当于 onPause 的任务或应用程序的主要内容,如果未能解决你的问题,请参考以下文章
关于android应用activity生命周期中,按下home键和按下back键的问题
onpause android中使用SharedPreferences存储数据的效果
Android:在啥情况下出现对话框会导致 onPause() 被调用?