4.uniapp 对 Android/data 目录下的文件拷贝

865 阅读1分钟

github: github.com/DWL716/unia…

将得到的安卓文件路径复制到公共目录下可以分为两种

  1. 通过使用 5+ 提供操作 IO 的 Api进行操作
  2. 通过原生安卓通过的SDK的Api进行操作

但是还得注意,如果Android的版本是10+及targetSdkVersion>=29会开启分区,所以无法直接获取Android/data目录下的文件,这里就需要进行权限的获取,且5+的api也无法获取到文件。

解决方法是先获取Android/data目录的权限,再通过安卓原生类和方法获取到微信聊天记录存储的文件路径下的文件列表(参考:3.uniapp获取微信聊天文件列表)。获取到文件的绝对路径后就可以通过下列方法来拷贝文件了。

拷贝文件方法有以下几种

  1. 文本的拷贝
  2. 获取到流后通过读取字节循环拷贝
  3. 使用管道和创建缓冲区进行拷贝