我正在与可用性设计作斗争。
让我们拥有只有一个权限android.permission.INTERNET
的应用程序。
我想从远程URL(我无法控制服务器端)下载图像,但是下载它以便用户可以选择是否以及在何处下载该文件。
显示流程批准和/或选择最终目的地的对话框。
我考虑过这些解决方案:
setDestinationInExternalPublicDir
下载管理器
WRITE_EXTERNAL_STORAGE
权限,用户无法决定是否下载Intent.ACTION_VIEW
启动浏览器
Intent.ACTION_VIEW
和自定义代理脚本
如何在不扩展当前权限或依赖非标准应用的情况下实现此目标?
链接到此github问题https://github.com/smarek/Simple-Dilbert/issues/1
答案 0 :(得分:0)
您的应用下载文件并可能将其写入外部存储。我觉得您应该请求WRITE_EXTERNAL_STORAGE (which implies also READ_EXTERNAL_STORAGE)权限,以准确表示您的App所做的事情。
然后你的第一个解决方案有效。您只需要在进行下载调用之前提示用户的任何方法。或以其他方式积极接受您的工作流程。