后台服务限制为10分钟,还是可以运行数小时?用户可以在运行时关闭后台服务吗?
答案 0 :(得分:2)
取决于代码,您可以永久运行后台服务,或在应用程序退出后立即关闭它。除此之外,如果几分钟内没有执行任何操作,操作系统本身可以关闭后台服务。
答案 1 :(得分:1)
系统可以运行服务有两个原因。如果有人调用Context.startService(),那么系统将检索服务(创建它并在需要时调用其onCreate()方法),然后使用客户端提供的参数调用其onStartCommand(Intent,int,int)方法。此服务将在此时继续运行,直到调用Context.stopService()或stopSelf()。请注意,对Context.startService()的多次调用不会嵌套(尽管它们会导致多次对onStartCommand()的相应调用),因此无论启动多少次,一旦Context.stopService()或stopSelf将停止服务() 叫做;但是,服务可以使用其stopSelf(int)方法来确保在处理完启动意图之前不会停止服务。
请参阅此链接
http://developer.android.com/guide/components/services.html#Lifecycle