iOS本机方式将文件共享到任何可能的应用程序

Ken*_*han 3 native file-upload file-sharing objective-c ios

我目前正在使用objective-C实现一个iOS应用程序,它具有用户可以与其他朋友或其他应用程序共享文件的功能(例如将文件上传到Dropbox,Google Drive,将文件附加到Mail,共享文件到Facebook Messenger,Whatsapp,通过蓝牙等).

是否有一种本地方式来实现这种共享功能,可以检测允许共享文件的所有应用程序,而我不需要逐个执行此操作?

Jef*_*ski 5

你想用UIActivityViewController.以下是NSHipster的一个例子,这可能是我在这个主题上看到的最全面的文章.Apple 在这里有一些很好的文档.

NSString *string = ...;
NSURL *URL = ...;

UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[string, URL]
                                applicationActivities:nil];
[navigationController presentViewController:activityViewController
                                  animated:YES
                                completion:^{
     // ...
}];
Run Code Online (Sandbox Code Playgroud)