Мобильная разработка
13.9K subscribers
880 photos
237 videos
2.98K links
Актуальное по мобильной разработке — Android, iOS, кроссплатформа

Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/oVBP
Download Telegram
Ближайшие события для мобильных разработчиков

Сессия Flutter live coding
26 мая в 18:30 по МСК, онлайн, бесплатно

Flutter-разработчики из компании Surf покажут, как не надо писать код на Dart в реальном проекте, а затем объяснят, как сделать это правильно.

Митап «iOS 14.5 и будущее трекинга»
26 мая в 20:00 по МСК, онлайн, бесплатно

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

Вебинар «Как починить таргетированную рекламу после iOS 14»
3 июня в 12:00 по МСК, онлайн, бесплатно

На вебинаре расскажут, как маркетологам выстраивать рекламную компанию в связи с изменениями в iOS 14.

#события #flutter #ios
Google выпустила Fuchsia OS для первых устройств

Совсем недавно мы писали об участии Samsung в разработке проекта, а тут, внезапно, такое.

Правда, пока что «замена Android» всё ещё не добралась до смартфонов. Но начало положено, так что ждём новостей от Google:

https://tprg.ru/u6dW
Как написать список изменений в App Store и Google Play?

Если вы зайдёте в changelog любимых приложений, то наверняка увидите унылое «исправлены ошибки и улучшена работа приложения».

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

Редактор из Авито рассказал о креативном подходе к написанию changelog в его компании:

https://tprg.ru/BXNS

#android #ios
В Apple M1 обнаружили серьёзную уязвимость

Из-за проблемы в конструкции чипа M1 любые два приложения могут без ведома системы обмениваться данными. При этом уязвимость не зависит от установленной ОС — macOS, Linux и других.

Пока исправления уязвимости нет. Специалисты рекомендуют в целях защиты запускать программы на виртуальной машине.

Подробнее об уязвимости M1RACLES: https://tprg.ru/jMuh
За что банят приложения в App Store и Google Play?

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

О наиболее популярных причинах для блокировки приложения читайте в статье: https://tprg.ru/4iS0

#ios #android
This media is not supported in your browser
VIEW IN TELEGRAM
С помощью легковесной библиотеки SuperForwardView вы можете добавить в Android-приложение кнопки перемотки, как в Netflix.

В серьёзных проектах вряд ли пригодится. Но код проекта поможет понять, как создавать подобные анимации на Kotlin.

#ui
Что такое Веб-страница? Это канал, где каждый найдёт для себя что-то интересное — статьи, туториалы, видео, викторины и многое другое, приправленное юмором.

Скорее подписывайтесь: @tproger_web
Реализация нижней панели навигации на Flutter

Пару месяцев назад мы делились уроком по созданию интерфейса чата на Flutter. На днях тот же автор выпустил новый ролик, в котором показал процесс реализации нижней панели навигации. Он разделён на четыре этапа:

— создание bottom sheet или нижней панели;
— добавление функциональности;
— доработка интерфейса;
— реализация собственной анимации переключения между вкладками.

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

https://youtu.be/nY5_fW7_mqc

Если решите покопаться в коде, то вот репозиторий проекта.

#flutter
Используем новые механизмы доступа к файлам в Android-приложении

С августа этого года все новые приложения в Google Play должны поддерживать как минимум API 30 (а с ноября — все обновления приложений). Это означает, что новые стандарты доступа к внешним файлам станут обязательными.

Как разработчикам стоит обновить свои приложения, рассказано в статье:

https://tprg.ru/85wy

#android
Если вы хотите сделать кастомные всплывающие уведомления в iOS-приложении, то NotificationToast может в этом помочь.

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

Код: https://github.com/PhilippeWeidmann/NotificationToast

#ios #ui #библиотеки
Что принесёт Android 12 разработчикам?

Google I/O 2021 уже прошёл, но разработчики продолжают изучать нововведения в Android 12.

Если вы ещё не разобрались в обновлении Android, то в этой статье собраны все изменения в Android 12. Кстати, о части из них мы говорили ранее:

https://tprg.ru/6Kmx

#android
Представлены приложения-финалисты конкурса Apple Design Award 2021

Apple выбрала по шесть приложений в каждой из номинаций:
— инклюзивность;
— удовольствие и веселье;
— взаимодействие;
— социальное влияние;
— визуал и графика;
— инновации.

В список финалистов попали популярные игры Genshin Impact и LoL: Wild Rift и даже несколько AR-проектов.

Рекомендуем познакомиться с избранными приложениями. Вдруг вы сможете найти несколько интересных идей: https://tprg.ru/4vQO

#ios
Карусель изображений на базе RecycleView

Библиотека Carousel Recyclerview реализует красивую карусель изображений, в которой можно настроить прокрутку (списком или бесконечную), вид (плоский или в 3D) и отражение. Написана на Kotlin.

Репозиторий: https://github.com/sparrow007/CarouselRecyclerview

#android #библиотеки #ui
Архитектурные паттерны в iOS, реализующие концепцию «чистой архитектуры»

В конце марта мы делились материалом по наиболее популярным в iOS-разработке архитектурам MV(X).

Тот же автор решил продолжить серию статей, и в этот раз рассказал об архитектурных паттернах, реализующих Clean Architecture, и подробно рассмотрел архитектуры VIPER и CleanSwift:

https://tprg.ru/ncgV

#ios #архитектура
This media is not supported in your browser
VIEW IN TELEGRAM
Игра Colors / Numbers на Flutter

Проект показывает пример реализации неявных анимаций на Flutter. Попробуйте сыграть сами (там же доступен код):

https://tprg.ru/efmB

Статья, объясняющая работу анимаций в проекте: https://tprg.ru/zE49

#flutter
Подборка интересных репозиториев от Google

Недавно Google запустила платформу Dev Library, где собраны интересные проекты с GitHub, использующие технологии Google. Для мобильных разработчиков там есть проекты, связанные с Android, Flutter и Firebase.

Кроме того, если у вас есть крутой open source проект, то можно оставить заявку на его добавление в подборку.

Платформа: https://devlibrary.withgoogle.com/

#android #flutter
Что послушать: подкаст о Fuchsia и Google I/O

Вторая половина мая для мобильных разработчиков вышла насыщенной: множество анонсов на Google I/O 2021 и внезапный релиз долгостроя Fuchsia на «умных» дисплеях Nest Hub.

Эти и другие темы ребята с подкаста Mobile People Talks обсудили с DevRel Google в России Звиадом Кардавой.

YouTube: https://tprg.ru/GH5s

SoundCloud: https://tprg.ru/fLIQ

#fuchsia #android #подкасты
Приложение, демонстрирующее подход к Android-разработке в 2021 году

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

Кстати, автор проекта — Игорь Войда, автор книги Android Development with Kotlin.

Репозиторий: https://github.com/igorwojda/android-showcase

#android
Как сделать экран подтверждения SMS-кода на iOS

Если в вашем iOS-приложении будет авторизация по номеру телефона, то необходимо реализовать экран подтверждения SMS-кода. Вот вариант, как можно сделать тестируемый и корректно работающий код фичи:

https://tprg.ru/PCgt

#ios
5 советов по оптимизации приложения для больших экранов

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

На сессии Material Design конференции Google I/O 2021 поделились идеями, как адаптировать приложение и не переписывать полностью код.

Доклад: https://youtu.be/UNDZn9GKJGo

Текстовая версия: https://tprg.ru/mNIc

#android