Я видел ответы на конкретный вопрос. Большинство ответов с просьбой включить «-fno-objc-arc».Как использовать рамки без ARC в приложении ARC iOS
Позвольте мне попытаться объяснить проблему.
У меня есть рамки «MobileCommunicationLibrary.framework», который использует много, не ARC вещи, как 1) класс, который подкласс NSAutoReleasePool 2) использует сохранить, релиз
Эта структура имеет headerfile «MobileCommunicationLibrary.h», который мне нужен для импорта в приложение ARC и множество других заголовочных файлов, которые имеют значение MobileCommunicationLibrary.h, такие как «VNSAutoReleasePool».
Теперь я разрабатываю приложение iOS «TestIQLNative». У этого есть класс «AppDelegate.h» и «AppDelegate.m», который использует ARC-материал, такой как слабое свойство и синтезирующий его. Этот класс должен использовать компиляцию ARC или флаг компилятора должен быть «-fobjc-arc»
Кроме того, мне нужно импортировать <MobileCommunicationLibrary/MobileCommunicationLibrary.h> в AppDelegate.h для использования методов, предоставляемых каркасом.
При импорте я получаю много ошибок, связанных с сохранением, выпуском, NSAutoReleasePool и т. Д., Поскольку они не являются ARC.
Я бы не смог поместить «-fno-objc-arc» для AppDelegate.m, поскольку это дало бы ошибку, жалуясь на синтез слабого свойства, разрешенного только в ARC.
Может кто-нибудь помочь?
< ошибки и моя фаза сборки >
< Одной из ошибок в заголовочном файле, который использует не код ARC в заголовочных файлах >
< Framework заголовок файлов и включая один заголовочный файл в Appdelegate.h >
< файл Framework Заголовок требует применения >
Показать ошибки и код, который вызывает их. Файлы заголовков не должны иметь ничего, что невозможно скомпилировать с ARC или без него. Например, вы не знаете, создан ли Foundation или UIKit с ARC или без него. Со временем это почти наверняка изменилось. Но это не создает проблем. И это тоже. –
@KenThomases Я добавил несколько скриншотов. Вы можете просмотреть его? Я не должен редактировать файлы заголовков фреймворка –
Просто выбросьте это ... почему бы не использовать инструмент автоматического рефакторинга для преобразования вашей библиотеки без ARC в ARC? –