TagРазработка

Управление показом Laravel DebugBar

Есть крайне удобная библиотека в Laravel, которую прям готов порекомендовать всем-всем-всем разработчикам на данном фреймворке. Я говорю о Laravel Debugbar. Лично я использую для отладки SQL запросов, но была, к примеру, необходимость отлавливать вызываемые ивенты в системе… в общем, плюшек там интересных хватает.

Continue reading

Почему лучше использовать кастомные TextView, EditText и проч.

  1. Работа с кастомными шрифтами.
    В случае, если вы хотите использовать шрифты Roboto в вашем проекте (или какие угодно ttf шрифты), то можно пойти двумя разными путями. Первый путь — подключать эти шрифты к TextView (давайте все виды вьюшек обобщим в этот тип) программно, в коде. Явный минус этого решения — то, что одно и то же действие придется прописывать при каждой инициализации вьюшки.
    В какой-то момент я написал класс ThemeHelper, который немного облегчал эту процедуру.
    Continue reading

Instant Run в Android Studio: медленно, а не быстро

Вообще на словах это офигенная фишка — проверяются локальные изменения, и заливаются только они, а не перекомпилируется весь проект. Однако на деле, лично для меня, это усложнило процесс разработки. Во-первых, первый запуск приложения стал о-о-очень долгим. Причем неважно, собирал ты его уже или нет — при смене девайсов считается, что все построить нужно с нуля. То же касается при переключении между flavors проекта…
Так что это имеет смысл, если тебе нужно посмотреть, как выглядит изменения в margin у вьюшки, например, но в целом, это чаще оборачивается капанием слюны на монитор во время сборки проекта.

Отключить Instant Run можно в настройках.

Отладка Android приложений через WiFi

Оставив в стороне споры о том, насколько нужный этот инструмент в разработке или нет, хочу поделиться найденным на github shell  скриптом, который автоматом подключает устройство к отладке по wifi.

Ссылка на gist

Continue reading

DePict Selfie Timelapse. Запоздалое послесловие

Конкурс

История с приложением закончилась довольно давно, где-то в августе 15го года, и, наверное, это не совсем честно — забросить ленту, не поставив последней жирной точки. Если честно, я долго собирался с мыслями, то отвлекался, то забивал, но в этот по зимнему морозный весенний день я все же решился донести до всех (кому интересно, конечно же) итоги своего проекта.

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

Continue reading

Когда приложение работает в фоне?

Для перехвата события, когда приложение уходит в фон (при сворачивании, открытии рабочего стола или другого приложения), можно использовать метод Application.registerActivityLifecycleCallbacks, в качестве параметра которому передается объект ComponentCallbacks (набор коллбеков, которые являются стандартными для всех компонентов приложения — Activity, Service, ContentProvider и Application).  Сам же метод registerActivityLifecycleCallbacks вызывается каждый раз, когда выполняются соответствующие методы у Activiy или сервисов.

Continue reading