Подтвердить что ты не робот

Автозаполнение Xcode 8 занимает 1 минуту

Сегодня я обновил свой проект до Swift 3.0.

Проект работал плавно с Xcode 7.3 и автозаполнением не было проблем. После обновления до Swift 3 автозаполнение в Xcode почти исчезло (требуется 1 минута).

  • Автозаполнение отлично работает с новыми проектами, только в этом есть проблема.

  • Я пробовал решения общей производительности, такие как удаление "+" на Strings и установка массивов без добавления, но без везения.

  • Я попытался удалить Derived Data, очистить проект

  • У меня есть все, что связано с разделами компонентов и симулятора

  • В моем проекте используется несколько Pods

ИЗМЕНИТЬ

Когда я удаляю предложение при наборе текста и принудительно его с помощью управления и пробела, он работает большую часть времени. Но он не работает, пока я печатаю (исправление ошибок тоже).

Когда я устанавливаю Pod, хотя каждый Pod находится в Swift 3, он просит меня снова преобразовать проект. Я нажимаю "ОК", и он показывает 999 + ошибок, но при генерации конверсии это означает, что нет необходимости в конвертации и "Обновить" (ошибки ушли, когда я очищаю проект).

Спасибо

4b9b3361

Ответ 1

У меня была та же проблема с автозаполнением во время моего преобразования проекта из swift 2.x в swift 3: автозаполнение частично исчезло, поэтому я выполняю следующие шаги, и с этого момента все вокруг автозаполнения работает нормально (надеюсь, что это будет продолжаться..):

  • Очистить сборку (выберите "Продукт" и "Очистить" )
  • Reset Симулятор (выберите Reset Содержимое и настройки и reset)
  • Удалить приложение с вашего устройства, используемое для разработки
  • Удалить производные данные (вы просто знаете эту часть..)

От запуска терминала эта команда:

rm -rf ~/Library/Developer/Xcode/DerivedData/*

Закрыть Xcode. Теперь вы можете попытаться остановить индексирование и перезапустить его, потому что он связан с автозавершением: если вы оставите его отключенным, автозаполнение перестанет работать. Итак, из терминала do:

defaults write com.apple.dt.XCode IDEIndexDisable 1

Запустите Xcode, и если вы хотите, вы можете проверить, отключена ли ваша автозаполнение, поэтому заново закройте Xcode и введите:

defaults delete com.apple.dt.Xcode IDEIndexDisable

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

Мое объяснение того, что случилось с моим проектом, заключается в том, что, вероятно, я прекратил случайный процесс индексирования (я нетерпелив), поэтому автозаполнение пострадало, на самом деле это сработало частично. С этой "принудительной повторной индексацией" я решил.

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

Ответ 2

Да, у меня также возникает проблема с преобразованием моего старого проекта swift 2.3 в swift 3. И я вернусь к swift 2.3, потому что есть много библиотеки, которые все еще используют swift 2.3, и xcode пытается преобразовать всю библиотеку код, и я тоже получил слишком много ошибок. Поэтому я рекомендовал вам использовать swift 2.3 в вашем существующем приложении. Вы можете попробовать swift 3 для новых приложений.