问题来源
对于ios的自动化,我们通常需要处理比较多的问题,其中一个可能的问题就是删除ios中的文件,例如照片、视频等。相比安卓,可以很方便的进行文件的删除,但是ios中却是增加了不少的禁制。
删除方式
一般来说,比较常用的方式是通过idevice连接,挂载到相应的挂载点,然后使用类似安卓的方式,通过 rf 的终端命令来进行删除。但是这样删除之后会有一个比较大的问题,现象如下:
当删除之后,在挂载点中进行查看,确实已经删除掉了 无论重新挂载和解挂载都不会再出现
了。但是依然存在于之前的位置上,此时只能再次进行手动删除。
问题原因
通过查找,libimobiledevice下有一个很类似的问题:
https://github.com/libimobiledevice/ifuse/issues/38
而我们常用的方式也是基于此,所以目前没有一个比较好的解决方法,还是进行一下手动的删除,原因是不能使得iPhone的IIRC 数据库中的记录同步更新。
至于其中的一个可能的解法,如下所示,还是错误的:
已经有人验证过不适合加入自动化解决。
实际是否删除
虽然是不能删除彻底,会留有视频的位置记录,但是记录自动化执行删除前后的内存大小,从内存上看,还是进行了释放,实际是进行了删除的。所以目前对自动化的影响还是比较小的,可以之后统一的将记录删除,记录所占用的空间可以暂时忽略不计。