【发布时间】:2019-03-22 01:19:03
【问题描述】:
我正在使用this 教程将文件上传到 Amazon S3 存储桶,但是当我关闭应用程序时,它会停止上传。我以为TransferService 正在处理这种情况。
谁能告诉我应该改变什么才能在用户关闭应用程序时不会终止上传?
【问题讨论】:
标签: android amazon-web-services amazon-s3 aws-sdk
我正在使用this 教程将文件上传到 Amazon S3 存储桶,但是当我关闭应用程序时,它会停止上传。我以为TransferService 正在处理这种情况。
谁能告诉我应该改变什么才能在用户关闭应用程序时不会终止上传?
【问题讨论】:
标签: android amazon-web-services amazon-s3 aws-sdk
您可以将上传代码移动到服务而不是活动。您也可以使用作业调度程序。
【讨论】:
适用于 Android 的 AWS 开发工具包 - S3 - TransferUtility 不涵盖在应用程序关闭时您可以上传/下载文件的用例。从 2.7.0 开始的 TransferService 仅限于侦听网络连接更改,并且不会从服务启动传输。传输将提交到后台线程池并执行,直到 Android 提供 CPU 周期。此外,TransferService 会在应用关闭时被杀死。
【讨论】:
getApplicationContext().startService(new Intent(getApplicationContext(), TransferService.class));Build.VERSION_CODES.O 的任何解决方法?
您可以将进程委托给 SQS 将发送一条消息,而另一部分则是处理 lambda 函数的 cloudwatch 调度(此 lambda 读取 SQS 消息并处理对象以最终上传到 s3)
另一件事是您上传代码以获得更多建议。
希望对你有帮助。
【讨论】: