有个需求是在qq或者微信收到文件以后,要传到我们自己的应用里面来。QQ收到文件以后,有一个选项,“其他应用打开”,我们把我们的应用也加进去就好了。
IMG_0263.jpg第一步:添加Document Types
Targets -> Info -> Document Types,加一个就好了。
屏幕快照 2016-05-31 上午11.13.21.png
‘Add icons here’选了图片,但是这个位置没反应,也不知道是干是什么用的。
第二步:接收文件
AppDelegate 里面实现
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(nullable NSString *)sourceApplication annotation:(id)annotation NS_DEPRECATED_IOS(4_2, 9_0, "Please use application:openURL:options:") __TVOS_PROHIBITED;
这个方法有点过时,推荐的方法
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options NS_AVAILABLE_IOS(9_0); // no equiv. notification. return NO if the application can't open for some reason
从9.0有效,两个方法都实现,在9.0+手机上,只有下面的方法被调用。
输出url
file:///private/var/mobile/Containers/Data/Application/1EDXXXE7-30C9-XX31-AE49-XX1ECB8CC92E/Documents/Inbox/studyjava-1.pdf
拿到URL,取出文件就没有什么问题。
网友评论