1

经过一番研究,我总结了以下几点,如果我错了,请告诉我。

一个活动通过“onStartCommand”启动一个服务,在服务类中。onStartCommand() {

return START_NOT_STICKY;

因此,使用 START_NOT_STICKY,服务将永远运行,除非被系统内存不足杀死。

与服务相关的活动将更容易被杀死,而让服务独自一人。

下面不太确定:我可以在任务栏中添加一个图标,在通知页面中添加一个通知块。我可以在他们身上添加 onchecklistener 。当点击图标时,我必须检查活动是否被广播杀死,然后重新启动活动并更新视图。

4

1 回答 1

1

一个活动通过“onStartCommand”启动一个服务

Activity 不会通过调用 onStartCommand 来启动服务,而是调用 startService() 或 bindService(),因此系统调用 onStartCommand 或 onBind。

使用 START_NOT_STICKY,服务将永远运行,除非被系统内存不足杀死。

服务旨在在没有任何用户界面的情况下在后台执行长时间操作。您在服务的 onStartCommand 方法中返回的整数决定了如果您的服务被终止,系统应该执行的操作。

与服务相关的活动将更容易被杀死,而让服务独自一人。

服务没有用户界面。服务将继续运行取决于您是否通过调用 bindService() 或 startService() 启动服务

我可以在任务栏中添加一个图标,在通知页面中添加一个通知块。

是的,您可以将通知添加到通知栏。

我可以在他们身上添加 onchecklistener 。

您可以在通知上定义和设置 Pending Intent

当点击图标时,我必须检查活动是否被广播杀死,然后重新启动活动并更新视图。

阅读本文,通过通知启动活动:避免重复活动

于 2013-05-04T05:22:44.090 回答