2014-01-17 42 views
2

我正在制作一个应用程序,我正在使用广播接收器来调用服务。问题是我必须打开应用程序才能使服务正常工作。我只想安装应用程序,它会自动运行服务。如何使活动始终在后台运行

在我使用意图过滤器,我已经为brodcast reciever一类叫onRecieve方法

+3

如果你想在背景上总是运行某些东西,为什么你需要一个活动?您可以改为使用服务。 – Prem

+1

...并在以BOOT_COMPLETED或USER_PRESENT事件启动的'BroadcastReceiver'中启动该服务。您的服务在内存不足的情况下很可能会停止。为了防止这种情况在前台启动服务。 – Trinimon

+0

事实上,您必须在应用程序启用之前打开一个活动[是一项功能](http://developer.android.com/about/versions/android-3.1.html#launchcontrols)。你必须有一些可以启动的应用程序,以便在安装后启用该应用程序。 – zapl

回答

4

如果你想在后台运行的东西应该是一个服务的主要活动。它是专门为此目的而设计的。 活动的唯一目的是用户互动

0

您可以在服务中使用startforeground()方法以避免死亡。