Как я могу передавать файлы из одного приложения в другое на одном устройстве iOS? - PullRequest
7 голосов
/ 12 августа 2011

Я пишу приложение для iOS, которое выполняет преобразование файла, сохраненного другим приложением на том же устройстве, в другой формат. Как я могу передавать файлы из одного приложения в другое на одном устройстве? Обратите внимание, что файлы являются нетекстовыми.

Ответы [ 2 ]

16 голосов
/ 12 августа 2011

UIDocumentInteractionController - ваш друг.

В основном это работает так:

  1. Приложение 1 регистрируется как способное обрабатывать файлы типа XYZ
  2. Приложение2 реализует UIDocumentInteractionController и даст пользователям возможность «отправить файл в App1» (я полагаю, это должно быть активировано пользователем)
  3. Приложение 1 реализует -(BOOL)application:openURL:sourceApplication:annotation: и обрабатывает переданный файл, который будетсохранено в вашем каталоге Documents/Inbox.Оттуда вы можете скопировать файл в другое место и затем манипулировать им, убедившись, что вы очистите его, избавившись от оригинала, сохраненного в папке «Входящие».

Доступна ссылка на класс здесь

Доступно руководство по программированию взаимодействия с документом здесь

3 голосов
/ 12 августа 2011

Если вы разрабатываете оба приложения, вы можете хранить общую информацию в цепочке для ключей, если ваши идентификаторы пакета соответствуют одному и тому же идентификатору начального числа пакета. См. здесь для получения дополнительной информации. Конечно, если вы создаете оба приложения, вы также можете использовать схему URL для передачи данных в кодировке base64.

Обновление: как сказал rog ниже, UIDocumentInteractionController - это замечательно, но он доступен только для 4.2 и выше, поэтому вы сокращаете большую часть своих пользователей, если хотите его использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...