Все достаточно просто, приложение которе передает данные должно создать
UIDocumentInteractionController;
UIDocumentInteractionController *_controller;
if(!_controller)
_controller = [[UIDocumentInteractionController alloc]init];
_controller.delegate = self;
NSURL *documentURL = @"тут должен быть урл в файловой системе, в который записаны данные которые нужно передать";
_controller.URL = documentURL;
if(![_controller presentOpenInMenuFromRect:cell.frame inView:self animated:YES])
{
NSLog(@"can't open in another app");
}
else
NSLog(@"Open in another app");
// ну и делигат методы
- (UIViewController *)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)controller {
return self;// это вьюв контроллер в котором будет всплывающее меню с выбором аппа который будет открывать.
}
- (void)documentInteractionController:(UIDocumentInteractionController *)controller willBeginSendingToApplication:(NSString *)application {
NSLog(@"Starting to send this puppy to %@", application);
}
- (void)documentInteractionController:(UIDocumentInteractionController *)controller didEndSendingToApplication:(NSString *)application {
NSLog(@"We're done sending the document.");
}
в принимающем аппе нужно в Info.plist добавить Exported Type UTIs, и добавить при запуске аппа обработку launchOptions
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
что-то типа вот такого
NSURL *url = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
NSData* data = [NSData dataWithContentsOfURL:url];
и делать уже что угодно с этой NSData, преобразовывать в то что вам нужно.
подробнее как добавить вашему аппу возможность открывать файлы написано
тут главное чтобы файл который вы создали в первом аппе был с тем же расширением которое вы зарегистрируете во втором.