Статьи

Проверка приложений iOS с помощью Reveal

Если вы когда-либо работали с Chrome Developer Tools, веб-инспектором Safari, то мне не нужно убеждать вас в их силе и полезности. Современные инструменты, такие как Chrome Developer Tools, позволяют вам исследовать DOM веб-страницы и манипулировать ею во время взаимодействия с ней.

Люди из Itty Bitty Apps взяли эту идею и перенесли ее на iOS. Результат показывает, и это впечатляет.

Покажите, что вы можете проверять и управлять иерархией представления приложения iOS во время выполнения. Это позволяет разработчикам вносить изменения во время выполнения, которые передаются на устройство или iOS Simulator.

Все, что вам нужно сделать, это установить Reveal на свой компьютер для разработки, включить библиотеку Reveal в приложение iOS и убедиться, что приложение Mac и iOS находятся в одной сети. Это так просто.

Раскрытие не является бесплатным, но у него есть 30-дневная пробная версия. Посетите веб-сайт Reveal , загрузите копию и установите ее на свой Mac.

Прежде чем вы сможете начать работать с Reveal, вам нужно включить библиотеку Reveal в ваш проект Xcode.

CocoaPods делает этот шаг очень простым. Откройте Podfile вашего проекта, добавьте pod 'Reveal-iOS-SDK' и запустите pod update из командной строки.

Первый шаг — связать ваш проект с библиотекой Reveal. Вы можете найти местоположение библиотеки Reveal, запустив приложение Reveal на своем Mac и выбрав « Показать библиотеку Reveal в Finder» в меню « Справка» . Вам также необходимо добавить флаг -ObjC к другим флагам компоновщика в настройках сборки вашей цели.

Если вы все еще используете Xcode 4, убедитесь, что ваш проект связан с платформами CFNetwork и QuartzCore . Этот шаг не требуется, если вы используете Xcode 5.

Создайте свой проект и запустите приложение iOS в iOS Simulator или на физическом устройстве. Если вы используете приложение iOS на физическом устройстве, убедитесь, что устройство находится в той же сети, в которой работает Mac Reveal.

Пользовательский интерфейс Reveal содержит три раздела:

  • Слева вы видите иерархию представлений текущего состояния вашего приложения. В самом верху вы должны увидеть объект UIScreen .
  • В середине вы видите пользовательский интерфейс вашего приложения с двумя элементами управления сверху, масштабированием и перспективой. Второй элемент управления позволяет переключаться между 2D и 3D визуализацией. 3D визуализация невероятно полезна, если вы пытаетесь найти тот единственный вид, который должен быть, но его нет.
  • Правая панель очень похожа на ту, что вы найдете в Xcode. Он содержит ряд инспекторов, которые отображают информацию о том, что вы в данный момент выбрали в иерархии представлений слева или посередине.

Просмотр иерархии представлений вашего приложения может быть немного сложным, особенно если вы работаете с коллекцией или табличным представлением. Вы можете свернуть части иерархии представления, а также вы можете увеличить пользовательский интерфейс вашего приложения в центральном представлении.

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

Вы можете перезагрузить иерархию представления вашего приложения, нажав кнопку в правом верхнем углу окна.

Изучение иерархии представлений вашего приложения под разными углами — это здорово, но на этом все не заканчивается. Одна из самых мощных функций Reveal — это способность манипулировать представлениями в иерархии представлений.

Выберите представление в иерархии представлений и отредактируйте его свойства на правой панели. Reveal не только обновляет то, что вы видите в Reveal, но и вносит изменения в ваше устройство или iOS Simulator. Это работает с любым представлением в иерархии представлений.

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

Тем не менее, довольно легко предотвратить это, создав две цели: цель разработки, которая включает в себя библиотеку Reveal, и цель для сборок релиза, которая этого не делает. Это кусок пирога, если вы используете CocoaPods. Взгляните на следующий Podfile, чтобы увидеть, как это работает.

1
2
3
4
5
6
7
8
platform :ios, ‘7.0’
 
pod ‘AFNetworking’, ‘~> 2.2’
pod ‘CocoaLumberjack’, ‘~> 1.8’
 
target :Development do
  pod ‘Reveal-iOS-SDK’, ‘~> 1.0’
end

Я обычно не делаю джейлбрейк своих iOS-устройств, но Питер Штейнбергер убедил меня в своем посте о проверке сторонних приложений . Прочтите его пост, если вам интересно, как ваши коллеги-разработчики или Apple создают приложения для iOS. Помните, что джейлбрейк устройства iOS может привести к необратимому повреждению устройства. Джейлбрейк iOS-устройства не без риска.

Выявление изменило способ отладки проблем пользовательского интерфейса. Чем больше я им пользуюсь, тем больше я на это полагаюсь. Раскрытие не бесплатно, но оно того стоит. Воспользуйтесь 30-дневной пробной версией и начните изучать приложения для iOS с помощью этого мощного инструмента.