Android 停止IntentService的正确方法

Android 停止IntentService的正确方法,android,intentservice,Android,Intentservice,我正在使用IntentService将图像上载到服务器。我的问题是我不知道如何/何时停止服务。当我在onHandleIntent(Intent..)中调用stopself()时,IntentService队列中等待的所有Intent都将被删除。但我不想停止活动中的服务,因为即使我的应用程序没有运行,我也希望完成上载过程。当一个IntentService没有更多的Intents(作业)要处理时,它会自动停止。它为每个Intent(作业)运行stopSelf(startId)。查看IntentSer

我正在使用IntentService将图像上载到服务器。我的问题是我不知道如何/何时停止服务。当我在onHandleIntent(Intent..)中调用stopself()时,IntentService队列中等待的所有Intent都将被删除。但我不想停止活动中的服务,因为即使我的应用程序没有运行,我也希望完成上载过程。

当一个
IntentService
没有更多的
Intent
s(作业)要处理时,它会自动停止。它为每个
Intent
(作业)运行
stopSelf(startId)
。查看
IntentService
源代码或从这里扩展服务类的

我的问题是我不知道如何/何时停止服务

IntentService
在运行
onHandleIntent()
时,如果没有向其发送更多命令,则当
onHandleIntent()结束时,IntentService会自动停止。因此,您自己不会手动停止
IntentService

当我在onHandleIntent(Intent..)中调用stopself()时,IntentService队列中等待的所有Intent都将被删除

这就是为什么你不这么做

但我不想停止活动中的服务,因为我想完成上传过程,即使我的应用程序没有运行


然后你让IntentService停止自己。

谢谢,我不知道IntentService在完成后会自动停止。:]Android SDK中的又一个锯齿状的角落。。。唉,我这里有这个问题,应该是25秒到1分钟的任务没有结束,所以我的意向服务没有完成-