Open In功能的坑

项目中有个需求:下载公司网站的用户协议到本地。我这边的设计是调用iOS原生的Open In功能,让用户将协议文档(PDF格式)保存到iBooks。为了测试Open In功能,在项目目录中添加了一个PDF文档(statement.pdf),可以通过如下代码获取文件路径:

NSURL *statementURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"statement.pdf" ofType:nil]];

这个文件可以通过Air Drop分享出去,却无法拷贝到iBooks,始终不得其解,查看了Apple官方的Sample Code DocInteraction,确定用法无误,后来尝试将statement.pdf放在App的沙盒目录(Document目录中),结果就可以正常工作了。原来是文件位置问题,App本身文件无法拷贝出来,这个不知道有没有Apple官方文档做过说明,如果哪位朋友知道,还请指教。

总结一下:项目目录中的文件无法使用Open In拷贝到其他App打开,沙盒中的文件可以。

你可能感兴趣的:(Open In功能的坑)