mobDev()
157 subscribers
62 photos
5 videos
98 links
🔥 Твой фид мобильной разработки
➡️ Новости, статьи, видео, квизы
👨‍💻 #android #ios #crossplatform
Download Telegram
Релизнулся Kotlin 1.6.0 🤖

Второй крупный релиз 2021 года, после 1.5.0, не обошелся без приятных изменений. Основное:

➡️ Улучшение стабильности для ряда функций (exhaustive when statements, suspending functions as supertypes, instantiation of annotation classes и другое)

➡️ Новый принцип управления памятью в Kotlin/Native (экспериментальная фича, так что может и будет работать не идеально)

➡️ Поддержка Xcode 13 для Kotlin/Native

➡️ Новый плагин для Gradle - Kover

Подробнее + инструкция по установке в блоге JetBrains

#android
Неоморфизм - нестандартная философия дизайна, идущая наперекор гуглу с их Material You, что в наше время редкость 🤷

Библиотека neumorphic-compose изменяет стиль компонентов Jetpack Compose. Особенности:

➡️ Активное использование теней в элементах - в актуальных интерфейсах сейчас такого почти не встретишь

➡️ 3 варианта оформления: выпуклая, вогнутая и гибридная формы

➡️ Широкая кастомизация, темная/светлая темы

Стиль оригинальный, но довольно специфический - подойдет далеко не к каждому интерфейсу

#lib
Когда третий день читаешь введение в корутины Kotlin 😤
Apple заподозрили в накрутках 🙈

Ситуация вкратце: всего за месяц рейтинг приложения Apple Podcasts вырос с 1,8 до 4,7 баллов (что эквивалентно росту с "ужасно" до "отлично"). Ни одного обновления за это время не было.

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

Напомню, ранее рейтинг подкастов обвалился в конце сентября из-за того, что Apple разрешили пользователям ставить оценки собственным приложениям компании.

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

#ios
Вот через что приходится проходить людям, читающим некачественный код после другого разработчика 🤦

Неприятно? Еще как. Чтобы избежать подобного — отличный материал о написании чистого кода на Kotlin

#android
Искусство оптимизации в Android: уменьшаем вес приложения 👾

Оптимизация размера приложения — одна из важнейших предрелизных практик. Цифры говорят сами за себя: согласно недавнему исследованию, 70% пользователей учитывают вес приложения перед его загрузкой.

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

Прочитать можно на медиуме. Заявленное время чтения 7 минут, но по ощущениям займет чуть больше

#android
👍1
Не все так просто с неоморфизмом 🧐

Недавно рассказывал об относительно новой и подающей надежды концепции дизайна под названием неоморфизм. В последнее время все чаще вижу зарисовки на тему, например выше на фото - интернет-магазин Adidas, переосмысленный в этом стиле (больше примеров тут)

Казалось бы, отлично - свежий взгляд на дизайн и новое дыхание в UI, однако не обошлось и без ряда проблем. Основные претензии заключаются в сложностях с совместимостью и доступностью (accessibility для людей с ограниченными возможностями). Подробнее - здесь, материал конца 2020 года, но в целом до сих пор актуален

Кстати, на neumorphism.io можно самостоятельно поиграться с настройками неоморфических элементов и сразу получить CSS блок
Корутин много не бывает, поэтому сегодня разбираемся в работе с распространенными ошибками 🪲

Ловите неплохой материал по обработке исключений в Kotlin Coroutines через блоки Try-catch или CoroutineExceptionHandler. Время чтения — 4 минуты, а автор в основном проходится по верхам, так что отлично подойдет, чтобы освежить знания по теме

#android #tutorial
Пихаем рекламу в лицо пользователю: Теперь с SDK от гугл 🌚

Google Mobile Ads — SDK для Flutter, работает напрямую с AdMob и Ad Manager и подтягивает в ваше приложение рекламные действия. Причем диапазон неплохой — от обычных баннеров до хитрых ходов вроде внутриигровых вознаграждений за просмотр видео

Поддерживает также модули покупок внутри приложений и онлайн-платежи через Apple/Google Pay

Если работаете с флаттером и планируете монетизировать приложения, очень рекомендую не обделять GMA вниманием. Это один из тех случаев, когда технология реально маст хэв

#android #ios #flutter
Ну вот и поговорили 🤷
Почему мобильные видеографы все чаще выбирают Android? 🎥

Последний раз айфон возглавлял рейтинги камер DXOMARK в 2019 году, а именно это был 11 про макс. С тех пор яблочные девайсы не поднимались выше 4 места, на котором в этом году находится 13 про макс. Лидером рейтинга уже не в первый раз становится Huawei, существенно опережающий айфон по детализации и работе с цветом (но все еще не по стабилизации кадра)

Казалось бы, на этом моменте все в целом ясно: андроид-смартфоны вырвались в топ и обогнали айфоны по возможностям камеры. Однако это лишь железо. А что насчет ПО?

А насчет ПО хороших новостей для владельцев техники Apple также сегодня не предвидится. Разработчик mcpro24fps, утилиты для видеосъемки на телефон, рассказал на хабре, почему он, как и многие другие мобильные видеографы, выбирает андроид. Статья задевает много моментов — например, вечное упрямство Apple, запрещающих отключать агрессивный шумодав и искусственную резкость, или высокий битрейт на андроиде, добиться которого можно с помощью пары костылей

В общем, крайне занимательный материал для любителей мобильной съемки. На прочтение у меня ушло ~15 минут

_____
Зацените клип, снятый для одной неофолк группы на Redmi Note 9 Pro (телефон стоимостью в ~20.000 рублей). Работа выглядит просто бомбически и за 2021 год шесть раз становилась лауреатом международных кинофестивалей

#ios #android
Шпаргалка для входа в айти 🤫

Давно не заходил на roadmap.sh, а тем временем там приятно изменился дизайн и добавилось несколько направлений, которых не было еще в октябре (а именно Angular, Python, Go и Java). Кроме того, в разделе coming soon теперь значится AWS и QA

Если вдруг вы по какой-то причине до сих пор не знакомы с этим сервисом, очень советую посмотреть, мне в свое время эти роадмапы страшно помогли

_____
Ничего по iOS, к сожалению, до сих пор не завезли

#android
Умный дом из глупых предметов на базе iPhone и Apple HomeKit 🏠

Существует два основных пути сбора и настройки умного дома:

➡️ Можно выбрать какую-то существующую экосистему (свои варианты предлагают Samsung, LG, Xiaomi и не только) и пользоваться из коробки, не забыв прикупить полный набор умных девайсов от производителя

➡️ А можно включить режим красных глаз и обмазать микроконтроллерами свои обычные глупые предметы, вроде светодиодной ленты или электрочайника, получив схожий результат при значительно меньших тратах

Нас, конечно же, интересует второй вариант. Сегодняшний материал рассказывает про подготовительный этап этого действа: от самых начал вроде работы с микроконтроллером (в данном случае ESP32) до проработки общего флоу и написания адаптированной прошивки для HomeKit.

📖 Время чтения ~10 минут

#ios
Тайная техника монетизации в урон психическому здоровью пользователя 🤫
Пишем интерфейс чата на Flutter 💬

Аккуратный дефолтный чат с bubble-сообщениями, переносом строки и современным дизайном

➡️ Подойдет буквально для чего угодно, где используется чат

➡️ Хорошая кастомизация, можно к примеру изменить формат переноса в зависимости от ширины экрана

➡️ Мультиплатформа — полностью на Flutter

Туториал по ссылке ниже, время чтения ~10 минут

#flutter
Проводить тесты — как известно работа QA-специалиста, но что если у вас его нет?

Разбираемся в азах тестирования Android-приложений: UNIT-, API- и UI-тесты, много полезных (к тому же бесплатных) инструментов, анализ затрат и проверка на соответствие тестов бизнес-задаче

На самом деле, даже если у вас набрана команда и есть выделенный тестировщик, понимать основы тестирования приложений должен каждый разработчик, поэтому крайне рекомендую ознакомиться

📖 Время чтения ~10 минут

#android
Зачем я вообще продолжаю читать эти гайды...
Митап по мобильной разработке Luxoft TechFest #6

Это уже шестой бесплатный ивент от Luxoft, на этот раз посвященный мобильной разработке, а именно тестам/автотестам и вездесущему флаттеру. Событие пройдет уже в этот четверг, 16 декабря, и начнется в 18:00. Экспресс-митап займет 2.5 часа и включает 3 публикации:

➡️ Гайд по выживанию в мире UI-тестов
Много информации по тестированию, от выбора типа тестов для конкретного проекта до инструментов и настройки автотестирования

➡️ Как проходит развитие библиотеки Elementary
Знакомство с библиотекой Elementary, которая позволяет писать приложения на Flutter по паттерну MVVM

➡️ Стелем мягкую соломку на жёсткий Flutter
Разработчик из Surf поделится базой лучших Flutter-практик, накопленных командой за 3 года

#event
Адаптация доков по этапам отрисовки кадра Jetpack Compose 🤖

Jetpack Compose имеет 3 основных этапа отрисовки кадра:

— Composition (описание UI и запуск composable-функций)

— Layout (измерение и размещение элементов UI)

— Drawing (финальный рендеринг элементов на Canvas)

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

#android
Как сделать качественные Push-уведомления в своем приложении 🔔

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

В статье на хабре UX-редактор из Авито рассказывает об основах создания хороших пуш-уведомлений:

👉 Адаптация под iOS и Android (одни и те же пуши выглядят по-разному на разных ОС)

👉 A/B-тесты (да, пуши тоже нужно тестировать)

👉 Правила хорошего тона (персонализация, вариативность и информативность)

👉 Разбор хороших и плохих примеров

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

#ios #android