Лучшие способы хранения данных приложений для iPad / iPhone - PullRequest
2 голосов
/ 16 августа 2010

Я занимаюсь разработкой приложения для iPad и не уверен, как лучше всего хранить данные приложения. До сих пор я использовал .plist, в котором хранятся сотни строк для игры-головоломки, и это прекрасно работает, но если мое приложение будет хорошим, оно должно будет хранить десятки тысяч строк (представляющих готовые загадки).

Я читал, что плохая идея использовать .plist для больших файлов, так как лучше всего хранить много информации (только для чтения) для приложения iPhone / iPad? [Можете ли вы также указать мне твердый учебник о том, как его хранить? ]

[Мне не нужно загружать все строки в мое приложение в любой момент времени, только около 50 за каждый раунд игры].

Ответы [ 2 ]

2 голосов
/ 17 августа 2010

У вас есть несколько вариантов в голове: вы можете использовать базу данных или вы можете создать архив.Лично я бы использовал подход архива, но база данных в sqlite или CoreData будет работать точно так же (и даже быстрее).

Чтобы создать архив, ваши классы должны подписаться на протокол NSCoding,реализуя два метода - (id) initWithCoder:(NSKeyedUnarchiver*)aDecoder и - (void) encodeWithCoder:(NSKeyedArchiver*)aCoder.Они используются при вызове [aCoder encodeObject: myString forKey: @"theKeyIWantToUse"]; и [self setMyString: [aDecoder decodeObjectForKey: @"theKeyIWantToUse"]];

. Чтение и запись данных из архива очень просты и относительно быстры, благодаря полировке Apple в системе кодирования.

Опять же, альтернативно,вы можете создать бэкэнд CoreData, который будет управлять хранением и поиском объектов в базе данных.Это показывает, где хранятся данные и как к ним осуществляется доступ, что очень полезно.Надеюсь, это поможет!

0 голосов
/ 16 августа 2010

Вы должны использовать базу данных sqlite.Вот один из множества уроков:

http://dblog.com.au/iphone-development-tutorials/iphone-sdk-tutorial-reading-data-from-a-sqlite-database/

...