прекратите чтение, если вы скажете что-то вроде "бла-бла, использование частного API будет отвергнуто, бла-бла"
Это для корпоративного приложения
в iOS 5 я пытаюсь отправить текущие аварийные журналы на мой сервер с клиентских iPad. У них есть программное обеспечение для управления, но нет возможности получить из него аварийные журналы, только журнал консоли, который в этом случае не помогает.
Я попытался просто прочитать содержимое / var / logs / CrashReporter, используя
NSError * error;
NSArray * directoryContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:@"/var/mobile/Library/Logs/CrashReporter" error:&error];
но получите
Error Domain=NSCocoaErrorDomain Code=257 "The operation couldn’t be completed. (Cocoa error 257.)" UserInfo=0x197e80 {NSUserStringVariant=(
Folder
), NSFilePath=/var/mobile/Library/Logs/CrashReporter, NSUnderlyingError=0x198370 "The operation couldn’t be completed. Operation not permitted"}
Я также пытался NSFileManager contentsOfDirectoryAtURL:
и имел ту же ошибку
Я искал частный API для доступа к файлам вне песочницы, но не вижу ничего, что торчит.
Есть ли другой способ получить СУЩЕСТВУЮЩИЕ журналы сбоев на устройстве? Я изучаю реализацию одного из существующих пакетов журналов аварийных событий сторонних производителей, но мне нужен доступ к текущим журналам на устройстве, поскольку этот аварийный сбой не легко воссоздать, и устройства также недоступны. Пользователи также не синхронизируются с iTunes, поэтому я не могу получить журналы оттуда.
я знаю, что это возможно, по крайней мере в джейлбрейкнутой среде, из-за приложений, таких как iFile, которые делают это. и в среде с джейлбрейком я вижу ту же ошибку, что и в среде без джейлбрейка, с кодом выше.
есть предложения?