Ios 8 как отлаживать пользовательскую клавиатуру?

Я успешно создал пользовательскую клавиатуру с Swift на симуляторе iOS 8.

Хотя он работал хорошо, но я не мог его отладить. Это скрытая цель и была установлена ​​через Settings- > General. Размещение закладки в XCode не работает.

Ответ 1

Я могу отлаживать пользовательскую клавиатуру с помощью симулятора через Xcode 6.

  • В качестве схемы выберите клавиатуру (а не контейнер). Change scheme

  • "Запустить", а затем выберите приложение на вашем симуляторе, чтобы отладить расширение.

Run your app

Ответ 2

Кажется, что на данный момент Apple не получила поддержки отладки расширения в симулятор. У меня была такая же проблема, но я заметил, что мы можем отлаживать код, если мы выполняем приложение на устройстве, как показано ниже.

1) Выберите цель расширения клавиатуры.

2) Перейдите в "Редактировать схему".

3) На вкладке "Информация" выберите раскрывающийся список "Исполняемый файл" и установите флажок "Расширения отладки и службы XPC".

Все еще есть несколько проблем, как мы не можем видеть вывод NSLog, но вы можете проверить значение переменных, как и раньше, или я предлагаю вам проверить эту ссылку. Он может работать для отображения вывода NSLog KeyboardViewController NSLog IOS 8.

Ответ 3

Apple сообщила об этой проблеме как о проблеме в примечания к выпуску Xcode 6.1:

Настройки локализации и клавиатуры, в том числе сторонние клавиатуры, неправильно соблюдаются приложениями Safari, Maps и разработчика в iOS 8.1 Simulator. [NSLocale currentLocale] возвращает en_US, и доступны только английские и Emoji-клавиатуры. (18418630, 18512161)

Я использую Xcode 6.1.1 и кажется, что он все еще не решен, но я обнаружил обходной путь. Вы должны выполнить следующие действия:

  • Откройте Xcode и в строке меню нажмите Xcode > Open Developer Tool > iOS Simulator

  • Теперь в строке меню iOS Simulator перейдите к Hardware > keyboard и проверьте, включена ли "Подключить аппаратную клавиатуру". Если это так, щелкните его, чтобы отключить и выйти из iOS Simulator

  • Затем вернитесь к Xcode и убедитесь, что клавиатура выбрана в качестве схемы

  • Нажмите кнопку запуска или нажмите "Продукт" > "Выполнить", чтобы создать и запустить приложение, а в меню "Выбрать приложение для запуска" выберите "Сегодня"

  • Когда запускается iOS Simulator, откройте "Настройки" > "Основные" > "Клавиатура" > "Клавиатуры" > "Добавить новую клавиатуру" и выберите свой собственный, а затем нажмите в клавиатуре + сдвиг + H для возврата к главному экрану

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

Если клавиатура все еще не отображается:

  • удалите файл com.apple.iphonesimulator.plist из ~/Libray/Preferences/
  • В строке меню iOS Simulator нажмите iOS Simulator > Reset Content and Settings...

Подробнее о клавиатурной отладке и разработке здесь

Ответ 4

После поиска и изучения этого, я нашел лучшее решение для установки и использования Reveal. Он помогает визуализировать пользовательскую клавиатуру, например, представление иерархии отладки, и отображает различные другие меры.