Как реализовать встроенную в iTunes функцию "Общий доступ к файлам"

Я заметил, что несколько приложений, когда подключено iP *, имеют функцию "Общий доступ к файлам" внутри iTunes. Примерами приложений являются CloudReaders, Stanza и т.д. Этот интерфейс позволяет пользователям добавлять файлы в приложение и сохранять файлы из приложения на свои компьютеры. Сейчас у меня есть HTTP-сервер, запущенный внутри приложения, который позволяет пользователям добавлять файлы к нему через Wi-Fi, но я также хотел бы поддержать вышеупомянутый метод.

Благодаря Art Gillespie, я получил эту работу. В последнее время я переименовал свой проект и в конечном итоге пришлось снова перекопать, чтобы выяснить, как снова включить его, поскольку он ушел.

Вот как вы это делаете.

  • В вашем plist добавьте новый ключ для UIFileSharing. Он должен быть указан как нечто вроде "Приложение поддерживает обмен файлами iTunes".
  • Создайте свой код в режиме "Release".
  • Перейдите в папку build/Release-iphoneos/ вашего проекта и перетащите файл приложения (не .dSYM) в iTunes. Нажмите "Да", если он спрашивает о замене.
  • Теперь, если вы нажмете на свое устройство и перейдите в "Приложения" и прокрутите вниз, вы увидите свое приложение, указанное в списке приложений "Общий доступ к файлам".

Ответ 2

В новом Xcode вы можете сделать это в пользовательском интерфейсе:

1. Select your project in top left
2. Select target in next column
3. Click on Info tab
4. In Custom iOS Target Properties, hover mouse over any row and click +
5. In popup, select "Application supports iTunes file sharing", then set Value to YES on right
6. Click Validate Settings at bottom to make sure all is good

Ответ 3

Согласно apple doc:

Поддержка совместного использования файлов
Поддержка обмена файлами позволяет приложениям создавать файлы пользовательских данных в iTunes 9.1 и более поздних версиях. Приложение, объявляющее о своей поддержке совместного использования файлов, делает доступным содержимое своего каталога/Документов для пользователя. Затем пользователь может перемещать файлы из этого каталога и из него по мере необходимости из iTunes. Эта функция не позволяет вашему приложению обмениваться файлами с другими приложениями на одном устройстве; для этого поведения требуется объект контроллера или объекта взаимодействия с документом.

Чтобы включить общий доступ к файлам для вашего приложения, выполните следующие действия:

  • Добавьте ключ UIFileSharingEnabled в файл Info.plist вашего приложения и установите для значения ключа значение YES.

  • Поместите файлы, которые вы хотите использовать в своих каталогах Документы приложений.

  • Когда устройство подключено к компьютеру пользователей, iTunes отображает раздел "Общий доступ к файлам" на вкладке "Приложения" выбранного устройства.

  • Пользователь может добавлять файлы в этот каталог или перемещать файлы на рабочий стол.

Приложения, поддерживающие общий доступ к файлам, должны иметь возможность распознавать, когда файлы были добавлены в каталог "Документы", и отвечать соответствующим образом. Например, ваше приложение может сделать содержимое любых новых файлов доступным из своего интерфейса. Вы никогда не должны предоставлять пользователю список файлов в этом каталоге и попросить их решить, что делать с этими файлами.

Дополнительные сведения о ключе UIFileSharingEnabled см. в разделе Ссылка на список свойств > .