Ускоряем Xcode с помощью RAM disk

В операционной системе macOS есть возможность создать виртуальный диск, логический раздел, который будет находиться целиком в оперативной памяти. Иногда его удобно использовать, если вам требуется временное высокоскоростное хранилище для ваших файлов, с которыми вы работаете в данный момент. Например, в случае с Xcode это может быть место, где должны находиться файлы Derived Data.

Для начала запустите Терминал и из под sudo выполните команду:

Она создаст в оперативной памяти диск HFS+ размером в один гигабайт и примонтирует его. Теперь его можно указать как ‘/Volumes/ramdisk’ в настройках Xcode ➝ Preferences ➝ Locations ➝ Derived Data ➝ выбрать ‘Custom’ ➝ вписать ‘/Volumes/ramdisk’. Всё! Для большей уверенности можете переоткрыть проект или рабочее пространство вашего приложения. Вы заметите заметное ускорение работы с проектом, особенно при сборке и компиляции.

ВНИМАНИЕ: все данные будут удалены после размонтирования виртуального диска!!! Недопустимо хранить на нём важные данные и файлы!

Лично у меня при сборке проекта с обычными настройками (Fusion Drive 120GB SSD + 500GB HDD) на всё уходит 165 секунд, а при использовании RAM disk всего 72 секунды. Прирост скорости в 2,3 раза.

Изменение визуальных свойств существующих объектов через протокол UIAppearance

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

Например, вот так легко установить белый цвет для кнопок и заголовка на всех UINavigationBar и наследниках:

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

который применит указанные параметры только к тем элементам, что вложены в объекты соответствующих классов.
Пример из документации:

И всё работает замечательно, до того момента, когда в дело вступает один нюанс, описанный в документации:

NOTE
iOS applies appearance changes when a view enters a window, it doesn’t change the appearance of a view that’s already in a window. To change the appearance of a view that’s currently in a window, remove the view from the view hierarchy and then put it back.

Как это свойство влияет на подход к использованию данных методов?

Читать далее Изменение визуальных свойств существующих объектов через протокол UIAppearance

InstaClock – Часы для Apple TV

На выходных понял, что не хватает часов на приставке Apple TV. В магазине оказалось их крайне мало и очень дорогие. Решил сделать свои собственные и с изюминкой. За пару вечеров, используя весь свой опыт, довольно легко сделал простое приложение на два экрана и пару-тройку диалогов. Отправил на проверку два дня назад, а сегодня вечером его уже проверили и выпустили в продажу! Теперь оно доступно бесплатно. Ах, да, изюминка. Она в том, что на экран с часами можно вывести галерею из фотографий любого открытого аккаунта Instagram.

Короткое видео:

Apple TV и звук по Bluetooth

Поскольку у меня нет телевизора и монитора со встроенными колонками с поддержкой звука по HDMI пришлось обзавестись дополнительным девайсом, для передачи звука с приставки на колонки по Bluetooth. Да, вы правильно всё поняли: в Apple TV нет аудиовыхода. Никакого нет.
На Aliexpress был заказан вот такой «свисток»:

Приемник звука по Bluetooth
Приемник звука по Bluetooth

Работает он на удивление хорошо. Ближайший аналог в магазине стоит примерно в 7-8 раз дороже. Подключился он сразу. Для этого в Настройках Bluetooth приставки сначала надо спарить её с этим устройством с именем H168, а затем, если это не произойдет автоматически, в разделе Аудио выбрать выходом это устройство. Всё! Подключаем к нему колонки и звук идет в них, а не по HDMI.

One more thing

Во-первых, устройству требуется питание по обычному USB. Во-вторых, можно вообще организовать весёлую схему, если у вас одна аудио-система в доме: отправляете звук с мака по AirPlay на Apple TV, она транслирует его на этот донгл, а он уже в ваши колонки. Чтоб два раза с дивана не вставать и не возиться постоянно с настройками. Шикарно! Если хочется больше качества, то надо, конечно, поискать достойные аналоги. Например, у Samsung есть подобное устройство за 5 тысяч рублей. Описанное же обошлось мне всего в 150 рублей и 50 дней ожидания.

Xcode на iPad? Почему бы и нет!

Нашел в рассылке интересную большую статью про то, как может выглядеть Xcode на iPad. Мне понравилась эта идея. В конце-концов, если Apple заявляет, что её новые iPad Pro это полноценная замена компьютеру, то эти iPad должны иметь инструментарий, чтобы создавать приложения!Игры уже можно делать, есть утилиты от других разработчиков. Так что, ждём с нетерпением.

Xcode. Ошибка доступа к DerivedData ‘No such file or directory’

Если вы столкнулись с подобными предупреждениями при сборке проекта в Xcode:

То решить проблему очень просто. Скорее всего по какой-то причине «испортились» права на папку DerivedData. Чтобы их восстановить, достаточно зайти в Настройки Xcode, выбрать Locations и у пункта Derived Data переключить туда-обратно тип с Default на Custom или Relative. Права восстановятся, предупреждение уйдет.

iPhone SE — I got it from my daddy

Вся суть нового iPhone SE: «Такой же как 6S, но дешевле и меньше».
Хорошо и ярко эта идея проиллюстрирована корейским поп-исполнителем PSY:

Мне айфон и айпад понравились. Только дороговато. =)

InVision поглотил Silver Flows

Не успели Абу Нимбалкар и Андрей Шахмин выпустить свою утилиту даже в публичное бета-тестирование, как их уже поглотили InVision! Вот это потенциал! Плагин так понравился разработчикам сервиса прототипирования, что они решили встроить Silver в свой отличный Craft в его будущих версиях.

Что ж. Это отличная новость, так как теперь Silver доведут до ума и релиза и, я уверен, будут бесплатно распространять! Миллионная пользовательская база InVision гарантирует это.

Sympli – простая совместная работа дизайнера и программиста

Наткнулся случайно на сервис Sympli, посмотрел ролики, скачал плагины и быстренько повторил то, что показано было в этих коротких роликах. Я в восторге.

How to use Sympli Xcode plugin from Sympli on Vimeo.

Читать далее Sympli – простая совместная работа дизайнера и программиста