Кто-нибудь имел опыт использования привязок Objective-C для YAJL? - PullRequest
2 голосов
/ 10 марта 2010

http://github.com/gabriel/yajl-objc

Я уже пробовал SBJSON, и пока он работает, я ищу альтернативные варианты для улучшения скорости разбора и потребления памяти. Однако использование этой библиотеки не так просто, как SBJSON, и я не уверен, как начать использовать yajl.

Примерно так:

NSArray *parsed = [data yajl_JSON];

Приводит к следующей ошибке:

- [NSConcreteMutableData yajl_JSON]: нераспознанный селектор отправлен на экземпляр 0x5372180

Попытка разобрать объект NSString приводит к той же проблеме. Я вижу интерфейс, но, похоже, реализации нет ... Не правильно ли я подключился к статической библиотеке?

Google приводит очень мало примеров использования. В документации по самому проекту говорится только о генерации объектов из данных / строк json.

#import "NSObject+YAJL.h"

NSData *JSONData = [NSData dataWithContentsOfFile:@"example.json"];
NSArray *arrayFromData = [JSONData yajl_JSON];

NSString *JSONString = @"[\"Test\"]";
NSArray *arrayFromString = [JSONString yajl_JSON];

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

1 Ответ

7 голосов
/ 20 марта 2010

Вы, должно быть, пропустили эту часть:

В разделе «Другие флаги компоновщика» в цели «Тест» добавьте -ObjC и -all_load (поэтому загружается категория NSObject + YAJL).

У меня не было проблем с использованием YAJL, пока я не запустил приложение в режиме выпуска, затем я получил ту же ошибку, что и вы - оказывается, я только добавил эти флаги в режим отладки, а не ко всем.

В общем, я могу порекомендовать YAJL, он определенно быстрее всех других альтернатив (см. результаты тестов в моем блоге ).

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