这里需要将其他应用的文件分享到我们自己的应用,让我们的应用出现在任何文件分享的情况下
首先,以SourceCode的方式打开info.plist
添加如下代码
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>LSItemContentTypes</key>
<array>
<string>public.item</string>
<string>public.content</string>
</array>
</dict>
</array>
效果如图:
这样就配置完成了
CFBundleDocumentTypes:指的是当前app可以接收文档的类型,比如图片、文档
LSItemContentTypes:指的是具体的可以接收的类型,比如txt、doc,这个key对应的是一个Array,Array中放的是支持类型的字段。
对分享文件操作
分享过来的文件,会存在沙盒下的Documents/Inbox文件夹下。
可以在AppDelegate中重写openURL方法
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
NSString *path = [url absoluteString];
path = [path stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"%@", path);
return YES;
}
这里需要注意NSURL转NSString,需要用UTF-8处理下。
这样就可以获取其他App的文件了