【发布时间】:2019-07-10 19:55:55
【问题描述】:
我应该使用什么来将大文件上传到服务器,即服务或意图服务。
我觉得 Intententservice 是上传大文件的正确方法,因为
1) 它创建的是自己的工作线程,
2) 上传后无需停止服务自动停止。
如果我要参加服务,我们确实有以下提到的一些优点:
1) 我们可以在服务内创建一个线程用于上传大文件
2) 如果需要,我们可以在上传时并行执行任务
3)如果假设在上传操作系统时发生内存不足(OUM)可以重新创建我们的服务但是对于 IntentService 我们没有这个权限,我猜
所以请各位大侠提出你的意见,我应该使用哪一个来上传大文件。
【问题讨论】:
-
你会以某种方式通知用户数据正在上传吗?如果是这种情况,请使用前台服务,因为即使在内存不足的情况下也可以避免使用这些服务。所以操作系统不会试图杀死你的服务
-
我们可以单独使用前台服务还是在intentservice中使用?
-
其实intentservice也扩展了Service类。因此,要使用前台服务,只需创建一个普通服务并在其中使用 startForeground 方法并传递 id 和通知对象
标签: android service intentservice