问题描述
|
我想进一步了解
Service
类中的setForeground()
方法。
有人可以详细解释吗?
解决方法
setForeground()
已过时,我认为在更新版本的Android上根本不起作用。您需要更新的startForeground()
。
引用自己的一本书:
但是,某些服务将丢失
由用户,如果他们神秘
消失。例如,默认音乐
附带的播放器应用程序
Android使用实际的服务
音乐播放。这样,用户可以
边听音乐边继续
将手机用于其他目的。
该服务仅在用户使用时停止
进入并按下停止按钮
音乐播放器活动。如果说
服务将被关闭
出乎意料的是,用户可能会怀疑
怎么了。
这样的服务可以声明
自己作为
\“前景\”。这将导致他们
优先崛起并使他们减少
可能会被撞出内存。的
权衡是服务必须
维持Notification
,用户
知道该服务正在索赔
前景的一部分。而且,理想情况下,
Notification
回到一些活动的地方
用户可以停止该服务。
为此,请在您的onCreate()
中
服务(或其他任何地方
服务的生活就有意义了),
叫startForeground()
。这需要一个
Notification
和当地特色
整数,就像notify()
方法一样
在NotificationManager
。它导致
Notification
出现并移动
服务成为前台优先级。
稍后,您可以致电
stopForeground()
恢复正常
优先。