Экспорт файла базы данных моего приложения с моего iPhone разработки на мой компьютер - PullRequest
3 голосов
/ 12 ноября 2010

У меня разрабатывается приложение для iPhone, которое я планирую использовать в исследовательских целях. Поскольку тестировщики используют приложение на моем телефоне для разработки, оно сохраняет аналитические данные в локальной базе данных (сейчас SQLite, но я не против перехода на CoreData).

После завершения тестирования мне необходимо иметь возможность скопировать эту аналитическую базу данных с телефона на мой компьютер, чтобы я мог выполнять запросы к данным. Какой самый простой способ сделать это? Если необходимо, я переберу данные, распечатаю их в журнале устройства, а затем импортирую обратно в базу данных на рабочем столе, но я бы хотел найти способ просто получить файл .sqlite, не пропуская его через промежуточный формат.

Ответы [ 4 ]

1 голос
/ 11 июля 2012

Вы всегда можете попробовать распечатать его в PDF, используя UIKit - простой способ экспорта информации и форматирования простым способом, если только вы не думаете, что этот метод не может применяться к вашей базе данных;)

Знаете ли вы, если мы можем по электронной почте базы данных SQLite непосредственно с устройства iOS?

1 голос
/ 12 ноября 2010

Вы можете использовать Xcode Organizer для загрузки сжатого снимка каталогов документов и библиотек вашего приложения с вашего устройства.

0 голосов
/ 06 марта 2013

Спасибо ole begemann.

В органайзере откройте свое приложение, а затем загрузите этот конкретный почтовый ящик.Таким образом, он создаст файл расширения .xcappdata.
Вы можете переименовать расширение в .zip, тогда вы найдете ту же папку, что и в папке InApp, в вашем искателе.и вы можете работать со своими данными.

0 голосов
/ 12 ноября 2010

Самый простой способ - добавить ключ UIFileSharingEnabled (в качестве логического значения, установленного на YES) в ваш Info.plist, а затем использовать что-то вроде этого:

NSString *docsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
[[NSFileManager defaultManager] copyItemAtPath:whereverTheDatabaseIs toPath:[docsPath stringByAppendingPathComponent:@"exported.sqlite"] error:NULL];

Затем вы или ваши пользователи сможете извлечь базу данных с устройства, используя малярную кнопку обработки файлов iTunes.

отредактировано - на самом деле, смотрите ответ Оле: я не знал об этом трюке, и он, вероятно, будет намного быстрее.

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