Obj-C, библиотека с кодом ARC и предупреждением - Возможно, в методе отсутствует вызов [super dealloc]? - PullRequest
1 голос
/ 25 марта 2012

Я добавляю MKStoreKit в свое приложение и получаю предупреждение Method possibly missing a [super dealloc] call.Я знаю, что библиотека была преобразована для нового ARC.

Однако я не готов преобразовать все мое приложение в ARC.

Как мне поступить?

Безопасно ли использовать опцию игнорирования или мне нужно где-то добавить настройку для моего приложения?

Ответы [ 2 ]

9 голосов
/ 26 марта 2012

Нажмите на проект Xcode в файловом навигаторе слева от окна Xcode. Теперь выберите цель приложения и найдите вкладку «Этапы сборки» в главном окне. Там вы увидите фазу «Компиляция источников». Для каждого из файлов в MKStoreKit отредактируйте флаги компилятора в источниках компиляции, добавив:

-fobjc-arc

Это позволяет вам правильно скомпилировать эти файлы с помощью ARC, но продолжайте использовать ручной подсчет ссылок через собственный код.

0 голосов
/ 26 марта 2012

Вы должны загрузить старую версию MKStoreKit, потому что каждый объект должен иметь метод - (void) dealloc и внутри этого [super dealloc].Вы также можете реорганизовать свой проект в ARC, используя Refactor-> Convert to ARC, или вы можете включить ARC для некоторого заголовочного файла, используя флаг: -fobjc-arc

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