在某些安卓机型上面,覆盖范围蛮广的,同一型号的手机有的没问题有的就有问题,各种版本的微信,各种版本的基础库都有
问题表现:
FileSystemManager.rmdir(Object object)设置了 recursive 为 true 时,若文件夹不是空的,可能包含多个子目录,子目录中还有多个文件时,没有响应,也不报错,没有任何回调
但是如果文件夹本身就是空的,在某些机型上面设置 recursive 为 false 时,也会报错,提示目录不是空的,可能是存在临时文件或空目录之类的,通过FileSystemManager.stat(Object object) 读取文件状态,又显示是空目录,没有读取到里面有文件,这是因为FileSystemManager.stat(Object object) 也有bug
FileSystemManager.stat(Object object) 不同客户端上的表现也不一样,iOS就是会把所有目录列出来,安卓就不能列出来目录,只有根目录和子目录下的文件,如果目录下的子目录全是空的子目录,就有问题了,不会列出来子目录,只有根目录
我们现在的临时解决方案就是 先用FileSystemManager.stat(Object object) 读取所有的文件状态,使用FileSystemManager.unlink(Object object)先遍历删除所有的文件,然后再把所有的路径都拆分一下,倒序排列,再使用FileSystemManager.rmdir(Object object)遍历删除空目录,但是recursive不能设置为false,要设置为true,因为上面也说了,明明是空的,但就是删不掉,说不是空的!
