Может ли приложение iPhone записывать файлы? - PullRequest
3 голосов
/ 01 сентября 2010

Итак, я знаю, что приложения для iOS запускаются в «песочнице» и все такое, но я вспомнил, что вспомнил, как Apple упомянула способ записи и чтения приложений из общего общего файлового ресурса, чтобы вы могли обращаться с этими файлами на своем компьютере, когдаВы подключаете свой iPhone (монтируете диск).Я думаю, что это было в контексте на iPad, но я не уверен.

Кто-нибудь знает что-нибудь еще об этом?Это довольно сложно для поиска.

Ответы [ 3 ]

11 голосов
/ 01 сентября 2010

Каждое приложение имеет каталог документов, в который можно записывать файлы.Чтобы получить каталог документов приложений, вы можете использовать:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

Чтобы написать «Hello, World!»в файл с именем hello.txt в каталоге документов вы можете сделать что-то вроде:

NSString *hello = @"Hello, World!";
NSString *myFile = [documentsDirectory stringByAppendingPathComponent:@"hello.txt"];
[hello writeToFile: myFile atomically:YES encoding:NSUTF8StringEncoding error:NULL];

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

2 голосов
/ 01 сентября 2010

Вы хотите хранить и получать файлы из каталога / Documents. Это для хранения конкретных данных приложения. Если вы добавите ключ UIFileSharingEnabled к своему приложению Info.plist и установите его на YES, ваши пользователи смогут видеть список документов на вкладке «Приложения» в iTunes, когда их устройство подключено к компьютеру. и оттуда может добавлять, удалять и копировать указанные документы.

UIFileSharingEnabled задокументировано здесь (и, да, его было трудно найти).

1 голос
/ 01 сентября 2010

iOS 3.2 и более поздние версии поддерживают общий доступ к файлам.

UIFileSharingEnabled (Boolean - iOS) указывает, будет ли приложение обмениваться файлами через iTunes.Если этот ключ - ДА, приложение делится файлами.Если он отсутствует или НЕТ, приложение не обменивается файлами.Приложения должны помещать любые файлы, которыми они хотят поделиться с пользователем, в каталог / Documents, где указан путь к домашнему каталогу приложения.

В iTunes пользователь может получить доступ к общим файлам приложения из раздела «Общий доступ к файлам».вкладки приложений для выбранного устройства.На этой вкладке пользователи могут добавлять и удалять файлы из каталога.

Этот ключ поддерживается в iOS 3.2 и более поздних версиях.

http://developer.apple.com/iphone/library/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html#//apple_ref/doc/uid/TP40009252-SW20

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