Использование C ++ для доступа к папке «Документы» на iOS

Интересно, есть ли способ получить ссылку на папку «Документы» на iOS, используя только C ++ (т.е. БЕЗ использования ЛЮБОГО кода в Objective-C; это потому, что это фреймворк, реализованный только на C ++, который можно добавить как библиотеку в iOS проект).

Пожалуйста, если возможно, укажите код в своем ответе.

Ответы на вопрос(3)

Да, у вас есть доступ к простым API Unix. См яблокиРуководства по iOS здесь.

Получите путь (используя API-интерфейсы Какао), затем преобразуйте его в представление, совместимое со строками C ++, используя API, такие как:,CFStringGetFileSystemRepresentationCFURLGetFileSystemRepresentation, или же .-[NSString fileSystemRepresentation]

Что-то вроде:

// you may need to wrap this in an autorelease pool
NSArray * paths(NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES));
const char* const path([[paths objectAtIndex:0] fileSystemRepresentation]);
if (0 == fsrep) {
  uh-oh
}
const std::string result(path);

Затем вы можете просто поместить это в свой собственный перевод ObjC ++ и вернутьresult из функции (которая будет видна остальным вашим источникам C ++).

Решение Вопроса

С кодом ниже я могу получить доступ к папке кэша в моем приложении. Я думаю, папка документов в "/ Библиотека / Документы»или кто-то еще. +

char *home = getenv("HOME");
char *subdir = "/Library/Caches/subdir";

homesubdir = полный путь

Далее, с полным путем, вы можете делать обычные вещи для чтения / записи в C ++

 bejado26 мая 2017 г., 21:11
Вы также можете сделать это для папки «Документы». Просто +.home/Documents

Ваш ответ на вопрос