iOS-第三方激活app,并且上传文件

现在一需求就是通过类似wps的分享可以跳转到自己的App,并且将文件上传至服务器
首先就是需要设置允许哪些第三方可以激活App
在plist文件中设置如下项:
这里写图片描述

2—->
在AppDelegate.m中写入代理方法

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options {
// 当从第三方进入的时候就会携带一些参数 包括要上传的文件的url
}

综上完成一半,下一半就是需要从沙盒中取出文件并且上传
其实苹果沙盒权限设置是很严格的,但是你通过第三方进入App的时候已经把文件复制到App的沙盒中。
这里写图片描述
3—> 下面就是需要获取到该沙盒中文件即可

NSString* docunment = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];NSString* doc = [docunment stringByAppendingPathComponent:@"Inbox"];NSString *strings = [NSString stringWithFormat:@"%@/%@", doc, self.nameType ];
//  其中self.nameType这里是有坑点的需要注意NSData *fileData = [NSData dataWithContentsOfFile:strings];
//  这样基本再沙盒中找到该文件,下面就需要实现上传的功能了
[[self.url lastPathComponent] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  //  需要编码