Важная часть сообщения об ошибке такова:
-[__NSCFString JSONValue]: unrecognized selector sent to instance 0x6ab7a40
Класс __NSCFString
является частным классом реализации для интерфейса NSString
, так что вы можете просто притвориться, что он говорит: NSString
.
Итак, мы видим, что вы отправляете сообщение JSONValue
на NSString
, а NSString
говорит, что он не распознает этот селектор. Библиотека SBJson добавляет метод JSONValue
к классу NSString
, используя категорию .
Итак, я понял, что вы не связали NSObject+SBJson.o
с вашим приложением. Если вы скопировали исходные файлы SBJson в свое приложение, убедитесь, что вы скопировали в NSObject+SBJson.m
и убедитесь, что оно включено в фазу сборки «Compile Sources» вашей цели.
Если вы создали библиотеку SBJson и привязали к ней свое приложение, вам может понадобиться добавить флаг -ObjC
в параметры компоновщика или даже флаг -all_load
.