【发布时间】:2020-02-22 17:08:23
【问题描述】:
我是 Android 新手,我想将一个大文件(大约 2GB)由用户选择(所以我猜它应该默认具有权限)复制到内部存储器。我已经在 AndroidManifest 中添加了权限,但我不知道如何(以及是否需要)使用 Android FileProivder。我还想知道这个过程是如何发生在另一个线程上的,这样应用程序在这个过程中就不会被阻塞,它可以显示进度。
【问题讨论】:
-
您不需要使用文件提供程序,复制小文件或大文件的代码是相同的。
-
在 manifest 中请求权限是不够的。您应该添加运行时权限的代码。好吧,并非总是...取决于路径。
-
一个代码 sn-p 会有所帮助:)
-
什么的代码 sn-p?
-
目标是经典文件路径。因此,复制是(在循环中)从所选 uri 上的输入流中读取字节,然后将字节写入 FileOutputStream。我从来没有用 copyDocument() 尝试过这样的场景。
标签: java android android-permissions file-permissions android-sdcard