Как исправить & ldquo; ARC запрещает явное сообщение отправки 'dealloc' & rdquo; брошенный устаревшим плагином Unity? [Дубликат]

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

1292
задан Nikolai Ruhe 25 August 2015 в 09:16
поделиться

18 ответов

Можно отключить ARC для отдельных файлов, добавив флаг компилятора -fno-objc-arc для этих файлов.

Вы добавляете флаги компилятора в Цели -> Фазы сборки -> Скомпилировать источники. Вам нужно дважды щелкнуть правый столбец строки под компиляторными флагами . Вы также можете добавить его в несколько файлов, удерживая кнопку cmd, чтобы выбрать файлы, а затем нажмите Enter, чтобы открыть окно редактирования флага. (Обратите внимание, что при редактировании нескольких файлов будут перезаписаны все флаги, которые он может уже иметь.)

Я создал образец проекта, который имеет пример: https://github.com/jaminguy/NoArc

xcode [/g3]

См. этот ответ для получения дополнительной информации: Отключить автоматический подсчет ссылок для некоторых файлов

2133
ответ дан Community 20 August 2018 в 11:13
поделиться
  • 1
    Таким образом, место для добавления этого флага не слишком интуитивно. Но, в Xcode 4, в фазах сборки и компиляции источников, на самом деле есть два столбца. Один для имени файла, а другой - для флагов компиляции для этого одного файла. Здесь вы вводите этот специальный флаг компилятора. – casademora 26 July 2011 в 18:58
  • 2
    Можете ли вы указать для каталога, т. Е. Для всех файлов в каталоге? Как насчет группы? – ma11hew28 9 August 2011 в 14:45
  • 3
    Нет каталогов. Только один файл за раз в настройках сборки :( – casademora 9 August 2011 в 16:15
  • 4
    @casademora вы не можете получить достаточное количество оборотов для этой информации. Спасибо. – theTRON 28 October 2011 в 01:06
  • 5
    @casademora вы можете выбрать сразу несколько файлов - но тогда не дважды щелкните, а нажмите RETURN. то просто добавьте -fno-objc-arc, и он будет добавлен ко всем выбранным файлам. edit просто увидел ответ ниже этого :( – pkyeck 7 April 2012 в 14:08

GO to App -> then Targets -> Build Phases -> Compile Source

Теперь, выберите файл, в который вы хотите отключить ARC

, вставьте этот фрагмент "-fno -objc-arc "После вставки нажмите ENTER

в каждом файле, где вы хотите отключить ARC.

-1
ответ дан adijazz91 20 August 2018 в 11:13
поделиться
  • 1
    ваш ответ не дает никакого дополнения к этому старому вопросу. – vikingosegundo 24 February 2015 в 14:33

Следуйте за шагом, чтобы включить отключить ARC

Выбрать проект Xcode Перейти к объектам Выберите раздел «Фазы сборки» В разделе «Фазы сборки» выберите источники компиляции. Выберите файл, который вы не хотите отключать ARC, и добавьте -fno-objc-arc

-1
ответ дан annu 20 August 2018 в 11:13
поделиться
  • 1
    Почему есть отрицательная маркировка. – annu 6 May 2015 в 13:31
  • 2
    ваш ответ не дает никакого дополнения к этому старому вопросу. – jomafer 14 May 2015 в 08:54
  • 3
    Какая дополнительная потребность. если вы знаете, что лучше, чем предоставить нам. – annu 14 May 2015 в 09:46
  • 4
    Я не спустил тебя вниз. Именно этот вопрос был задан 11 июля 11 в 5:21. Слишком много ответов с тем же ответом, который не добавляет никакой полезной информации ... Я подозреваю, что кто-то запустит вас по этой причине ... – jomafer 14 May 2015 в 09:56
  • 5
    не могли бы вы рассказать мне об этом. – annu 14 May 2015 в 12:48

Просто используйте флаг -fno-objc-arc в разделе «Сборка фаз»> «Скомпилируйте источники» перед файлами, к которым вы не хотите применять ARC.

1
ответ дан C_compnay 20 August 2018 в 11:13
поделиться

Примечание: если вы хотите отключить ARC для многих файлов, вам необходимо:

  1. открыть «Фазы сборки» -> «Скомпилировать источники»
  2. выбрать файлы с «left_mouse» + «cmd» (для разделенных файлов) или + «shift» (для сгруппированных файлов - выберите первый и последний)
  3. нажмите «enter»
  4. paste -fno-objc-arc
  5. снова нажмите «enter»
  6. прибыль!
33
ответ дан digipeople 20 August 2018 в 11:13
поделиться

Если вы используете Unity, вам не нужно изменять это в Xcode, вы можете применить флаг компиляции в метаданных для определенных файлов (файлов), прямо внутри Unity. Просто выберите их на панели «Проект» и примените с панели «Инспектор». Это важно, если вы планируете использовать Cloud Build.

4
ответ дан greenland 20 August 2018 в 11:13
поделиться

Можно отключить ARC (автоматический подсчет ссылок) для определенного файла в Xcode.

Выбрать Target -> Build Phases -> Compile Sources -> Выбрать файл (двойной щелчок) -> Добавить "- fno-objc-arc ".

Я столкнулся с этой ситуацией при использовании файлов« Reachibility ».

Это показано ниже:

enter image description here [/g0]

10
ответ дан Jayprakash Dubey 20 August 2018 в 11:13
поделиться

Для Xcode 4.3 может быть проще: Edit / Refactor / Convert to object-C ARC, а затем проверить файлы, которые вы не хотите преобразовывать. Я нахожу этот путь таким же, как с использованием флага компилятора выше.

42
ответ дан Jingjie Zhan 20 August 2018 в 11:13
поделиться

использовать -fno-objc-arc для каждого файла в фазах сборки

9
ответ дан Manish Jain 20 August 2018 в 11:13
поделиться

Добавить флаг «-fno-objc-arc».

Простые шаги: App> Цели> Сборка фаз> Скомпилировать источники> добавить флаг после класса "-fno-objc-arc"

3
ответ дан Manoj Chandel 20 August 2018 в 11:13
поделиться
  1. выберите проект -> цели -> фазы сборки -> источники компилятора
  2. выберите файл -> флаги компилятора
  3. add -fno-objc-arc
0
ответ дан Mnsd 20 August 2018 в 11:13
поделиться

Просто используйте флаг -fno-objc-arc в Build Phases> Compile Sources

20
ответ дан Serghei Pogor 20 August 2018 в 11:13
поделиться

Это очень простой способ сделать отдельный файл не дугой.

Выполните следующие шаги:

Отключите ARC в отдельном файле:

  1. Выберите желаемые файлы в Target / Build Phases / Compile Sources в Xcode
  2. Выберите файл .m, который вы хотите сделать NON-ARC PRESS ENTER Тип -fno-objc-arc

Файл без ARC для флага проекта ARC: -fno-objc-arc

Файл ARC для флага проекта не ARC: -fobjc-arc

34
ответ дан swiftBoy 20 August 2018 в 11:13
поделиться

Отключить ARC в файлах MULTIPLE:

  1. Выбрать нужные файлы на этапах Target / Build / Compile Sources в Xcode
  2. PRESS ENTER
  3. Тип - fno-objc-arc
  4. Нажмите Enter или Done

;)

enter image description here [/g0]

454
ответ дан Tibidabo 20 August 2018 в 11:13
поделиться
  • 1
    Спасибо! Долго искал эту функцию. Двойной щелчок не работает, если выбран несколько строк, но нажатие клавиши ввода делает. Так странно. – bobmoff 12 April 2012 в 14:31
  • 2
    Ух ты. Я потратил бы всю свою карму, чтобы снова поддержать это. Спасибо, что поделился! – jemmons 4 May 2012 в 01:59
  • 3
    похоже, это не работает на Xcode 4.3.3. двойным щелчком или нажатием кнопки ввода на выбранных файлах не появляется диалоговое окно для ввода флага -fno-ojbc-arc, у кого есть обходной путь для этого? – tom 25 July 2012 в 18:43
  • 4
    У меня был 4.3.3 и теперь 4.4 DP7, и он все еще работает отлично. Попробуйте перезапустить Xcode, перезагрузите компьютер и восстановите разрешения. – Tibidabo 29 July 2012 в 08:28

Пожалуйста, просто выполните скриншот и введите -fno-objc-arc.

5
ответ дан Tunvir Rahman Tusher 20 August 2018 в 11:13
поделиться
  1. Выбрать проект Xcode
  2. Перейти к целевым объектам
  3. Выбрать секцию «Сборка фаз»
  4. В разделе фаз сборки выберите источники компиляции.
  5. Выберите файл, который вы не хотите отключать ARC, и добавьте -fno-objc-arc

Disable ARC for a particular file [/g0]

11
ответ дан user2538944 20 August 2018 в 11:13
поделиться

Четыре обязательных шага, как описано в этом видео

    //1. Select desired files
    //2. Target/Build Phases/Compile Sources
    //3. Type -fno-objc-arc
    //4. Done
9
ответ дан user2554822 20 August 2018 в 11:13
поделиться

Я думаю, что все остальные ответы объясняют, как отключить MRC (Manual Reference Count) и включить ARC (Automatic Reference Count). Использовать MRC (количество ссылок вручную), то есть отключить ARC (автоматический счетчик ссылок) для файлов MULTIPLE:

  1. Выбрать нужные файлы на этапах Target / Build / Compile Sources в Xcode
  2. PRESS ENTER
  3. Тип -fobjc-arc
  4. Нажмите Enter или Done
3
ответ дан Vin 20 August 2018 в 11:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: