本地android.app.Service需要什么?

本地android.app.Service需要什么?,android,Android,我无法从文件中找到答案。远程服务有意义,但不是本地服务。我什么时候应该使用服务而不是POJO 应用程序告诉系统它想在后台做的事情的工具 如果我不告诉你会发生什么?我只会使用IntentService来完成主线程的工作 如果你不告诉别人,什么也不会发生:)即使你的应用程序关闭了,服务也会一直运行。您还可以将服务配置为在设备重新启动后自动启动。将服务视为单独的进程,“单独的应用程序”,它可以在后台运行。若你们需要在后台做一些繁重或常规的工作,你们应该创建服务。你们可以说,线程也可以在后台工作,但最大

我无法从文件中找到答案。远程服务有意义,但不是本地服务。我什么时候应该使用服务而不是POJO

应用程序告诉系统它想在后台做的事情的工具


如果我不告诉你会发生什么?

我只会使用IntentService来完成主线程的工作


如果你不告诉别人,什么也不会发生:)

即使你的应用程序关闭了,服务也会一直运行。您还可以将服务配置为在设备重新启动后自动启动。将服务视为单独的进程,“单独的应用程序”,它可以在后台运行。若你们需要在后台做一些繁重或常规的工作,你们应该创建服务。你们可以说,线程也可以在后台工作,但最大的区别是,当你们的应用程序被关闭,服务可以被配置为一直运行时,线程就会消失

很少有服务使用的例子

  • 信息。例如,您希望您的用户能够随时从远程服务器获取一些消息。如果您的应用程序将被关闭,您将无法与远程服务器建立任何连接。(当内存不足时,Android也可以关闭你的应用程序)。在这种情况下,您可以创建服务,该服务将在后台等待来自服务器的消息,并在消息到达时通知用户
  • 检查更新。例如,您希望在后台检查更新,并在有更新时通知用户。如果您不使用此服务,您的应用程序可以关闭或设备可以重新启动,但如果您使用正确配置的服务,它将始终在后台运行
  • 显示用户位置。获取用户位置可能需要几分钟,例如,您希望在用户打开应用程序时立即获取用户位置。您创建的服务可以在应用程序关闭时获取用户位置,而不是在用户打开应用程序时仅从您的服务获取最后一个用户位置
    “关闭应用程序”是什么意思?我猜不是进程终止,因为当它终止时,服务也会终止。您可以将服务配置为在进程终止后自动重新启动。但当我说“关闭应用程序”时,我指的是用户用手指滑动关闭。如果操作系统决定回收内存并杀死后台应用程序,会发生什么?服务是否会阻止终止进程?文档没有说明这一点。它也会被杀死,但会自动重新启动(如果您配置了它)。您还可以将其设置为“从地面开始”。“如果终止您的服务会对用户造成干扰,例如如果您的服务正在播放背景音乐,那么用户会注意到他们的音乐是否停止播放,则可以设置此标志。”文档:,android.app.Notification)谢谢。结论:除非您使用
    startForeground()