我正在开发一个使用azure移动服务的android应用程序。我想从Android上的Azure存储下载大文件。我想要块或类似的东西下载大文件。我该怎么做 ?有没有Java库?从Android上从Azure下载大文件
0
A
回答
1
Blob存储服务支持以块的形式下载数据,因此可以分段下载一个非常大的文件,并且当所有的文件都被下载后,您可以组装它们来创建文件。
我还没有与Android/Java的工作作为这样的,所以我不知道实现的具体细节,但总体上说,这是你会做什么:
- 获取共享访问签名(SAS )在您尝试下载的文件(blob)上。您可能会使用Windows Azure移动服务。确保你获得了与blob上的
Read
权限的SAS。建议使用SAS,因为这样就不必在设备上共享您的帐户凭据。您可以在这里查看教程,使用移动服务为您的blob创建一个SAS URL(http://www.windowsazure.com/en-us/develop/mobile/tutorials/upload-images-to-storage-dotnet/)。 - 拥有SAS URI后,您可以直接使用REST API以块形式下载BLOB。您需要调用
Get Blob
操作。块大小应该在Range
请求标头中传递。我不确定用于Azure的Java Storage Client Library是否可以在Android上使用,但是如果可以使用,则不必使用REST API,因为客户端库是REST API的包装。 - 一旦所有块都下载完毕,您可以将它们组合起来创建一个文件。
0
当前用于Azure存储的Java库目前不支持Android(这是我们有的一项功能请求,也是我们目前正在研究的内容)。由于安全原因,建议不要在移动设备上使用完全共享密钥身份验证,因为使用SAS或匿名访问是首选方案。如果你的场景是简单地下载一个blob,那么使用范围头部的简单GET请求就足够了,但是你需要实现逻辑来聚合应用程序中的blob范围。
0
我一直在打Google这个过时的问题,为了完整起见,我添加了这个最新的答案(我试图添加这个作为评论,但它太长了)。
的链接,移动服务是:
http://azure.microsoft.com/en-gb/develop/mobile/android-samples/
和链接为Microsoft Azure存储SDK是:
相关问题
- 1. 从Azure Batch下载文件
- 2. 从DropBox下载文件 - Android
- 3. 从Azure Blob存储下载文件
- 4. 更改文件名从Azure下载
- 5. 从Azure云存储下载大文件的最佳方式
- 6. 从Azure下载BLOB
- 7. 在Android设备上下载大文件
- 8. Android的下载大文件
- 9. 在Android上下载文件大于文件大小
- 10. 使用PHP从Mongodb下载大文件
- 11. 递归从Dropbox下载大文件夹
- 12. 从AWS实例下载大文件
- 13. 从S3下载文件大小
- 14. 从S3下载大量文件
- 15. Android:无法上传大文件从Android
- 16. Android - 从服务器上的文件夹下载所有文件
- 17. 从浏览器按顺序从Azure Blob存储下载文件
- 18. 从azure网站上传大文件到azure blob
- 19. Android下载的文件大小大于下载大小
- 20. Android从链接下载文件
- 21. 文件部分从Webview下载Android
- 22. Android - 从DropBox Hyperlink下载文件?
- 23. 从Fabric Beta下载Android APK文件Beta
- 24. Android:不从amazon s3下载文件
- 25. android - WebView从哪里下载文件到?
- 26. 从ashx下载文件到Android
- 27. 从android下载一个mp3文件
- 28. 从Android Git下载单个文件
- 29. Android - 从网址下载JSON文件
- 30. 从网站下载txt文件android
不Azure的SDK的Java(https://开头的github .com/WindowsAzure/azure-sdk-for-java)在Android上工作? –
我不知道。如果它起作用,我可以使用它吗?我正在使用天蓝色的移动服务。 –
不,现在不起作用。 –