Каталог путей, используемый в iOS - PullRequest
8 голосов
/ 01 сентября 2011

NSSearchPathDirectory

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

enum {
   NSApplicationDirectory = 1,
   NSDemoApplicationDirectory,
   NSDeveloperApplicationDirectory,
   NSAdminApplicationDirectory,
   NSLibraryDirectory,
   NSDeveloperDirectory,
   NSUserDirectory,
   NSDocumentationDirectory,
   NSDocumentDirectory,
   NSCoreServiceDirectory,
   NSAutosavedInformationDirectory = 11,
   NSDesktopDirectory = 12,
   NSCachesDirectory = 13,
   NSApplicationSupportDirectory = 14,
   NSDownloadsDirectory = 15,
   NSInputMethodsDirectory = 16,
   NSMoviesDirectory = 17,
   NSMusicDirectory = 18,
   NSPicturesDirectory = 19,
   NSPrinterDescriptionDirectory = 20,
   NSSharedPublicDirectory = 21,
   NSPreferencePanesDirectory = 22,
   NSItemReplacementDirectory = 99,
   NSAllApplicationsDirectory = 100,
   NSAllLibrariesDirectory = 101
};
typedef NSUInteger NSSearchPathDirectory;

Среди этих каталогов пути я знаю, что NSCachesDirectory и NSDocumentDirectoryможно использовать в iOS.Знаете ли вы, что некоторые другие тоже?

На данный момент я загружаю изображения в NSCachesDirectory и использую [UIImage imageNamed:] для печати изображений на экране.Но я ищу более явную папку для хранения моих изображений.

Спасибо,

1 Ответ

11 голосов
/ 30 ноября 2012

Насколько я знаю, на iOS можно использовать только эти:

NSDocumentDirectory is Documents/     (persistent, backed up, may be visible in iTunes)
NSLibraryDirectory is Library/     (persistent, backed up, not visibe to the user)
NSCachesDirectory is Library/Caches/     (not backed up, may be cleared by system)

Кроме того, есть:

NSTemporaryDirectory() is tmp/     (not backed up, *will* be cleared by system)

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


Для хранения изображений я бы создал каталог в библиотеке, скажем Library/Thumbnails/. Если изображения легко восстанавливаемые или загружаемые, вам следует создать и использовать Library/Caches/Thumbnails/.

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