工程需要在程序运行的时候,将app->bundle包内的一个mp4文件,复制到document文件夹下进行操作
但是我这里,document文件夹下的mp4创建成功了,但是mp4文件的大小一直是0kb,就是说只创建了数据,却没有写入成功,代码如下图
一开始,我以为是app的bundle包内的文件不允许读取操作例如fread之类的问题,但并没有查到说bundle包内的文件不允许读写操作,
后来发现,原来是fclose代码没有放到异步执行语句中,导致,文件刚fopen打开,然后立马执行fclose,然后异步代码调用的时候,去
fread读取复制到buffer,fwrite将buffer的内容写入到document文件夹里的时候,就当然没有效果了.
改成下边的就好了,将fclose代码放到GCD回调里边
ok,复制成功。
对了,如何在真机上查看mp4是否复制到document呢?需要以下两个步骤:
1->可以在工程的plist里边加入Application supports iTunes file sharing=YES的权限,
这个代码可以让你在连到电脑上的itunes时,查看本应用document文件夹下的内容,类似于“共享”
2->然后12.7以后的isunes,是无法显示手机上“应用”这一项的,如果你的itunes连上手机后怎么也调不出“应用”,
那你可以重装一个12.6.3.6的itunes,我的itunes就是这个版本的,是可以看到的
好了,就到这里.