Нераспознанный селектор отправлен в класс во время выполнения ошибки - PullRequest
0 голосов
/ 14 июня 2019

Я использую сторонний фреймворк, содержащий категорию на NSData и имеющий статический метод dataUsingBase64String:. Фреймворк отлично скомпонован и код успешно собран Но я получаю unrecognized selector sent to class ошибку времени выполнения при вызове этого метода.

Я также попытался добавить -ObjC, -all_load флажки в OTHER_LINKER_FLAGS XCode без удачи ..

Ответы [ 2 ]

0 голосов
/ 15 июня 2019

Примечание: мне нужно было добавить фреймворк таким образом,

Пути поиска фреймворка вместо добавления фреймворков в раздел «Связанные фреймворки и библиотеки»

Здесь как-тофреймворк не был загружен даже после добавления -Objc или -all_load.

Наконец, -framework в OTHER_LINKER_FLAGS помогло мне.

Что-то об этом из manpage,

-framework name[,suffix]
                 This option tells the linker to search for `name.frame-
                 work/name' the framework search path.  If the optional suffix
                 is specified the framework is first searched for the name
                 with the suffix and then without (e.g. look for `name.frame-
                 work/name_suffix' first, if not there try `name.frame-
                 work/name').
0 голосов
/ 15 июня 2019

Я полагаю, ваша библиотека статически связана. Общая проблема в том, что категории не включены или не связаны между собой. Кроме того, вам необходимо добавить -all_load к другим флагам компоновщика цели, которая использует вашу статическую библиотеку.

Также проверьте ответы ниже, похожие на вашу проблему

Ответ 1 - NSData Нераспознанный селектор отправлен в класс

Ответ 2 - Objective-C Категория Вызывает нераспознанный селектор

Ответ 3 - «нераспознанный селектор, отправленный экземпляру» в статическую библиотеку, несмотря на флаг ObjC

Надеюсь, это поможет

...