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

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

Регистрация в перечне РКН: https://tprg.ru/oVBP
Download Telegram
Прокачиваем собственный Gradle-плагин

Статья познакомит вас с тасками, провайдерами и свойствами Gradle, использованием ввода/вывода тасков, а также покажет, как получить доступ к различным артефактам сборки через Artifact API:

https://tprg.ru/JmL4

Ознакомиться с первой и второй частью статьи:
План обучения Android-разработчика

Держите план обучения, который поможет разобраться, что стоит изучить:

https://github.com/skydoves/android-developer-roadmap

В первую очередь стоит обратить внимание в схеме на секции: в них перечислены все необходимые темы. Не обязательно изучать последовательно — найдите для себя наиболее полезные темы.

#android #начинающим
👍1
Как бороться с зависимостями в iOS-проекте и сделать хуже, чем было (или нет?)

Мобильные разработчики из inDriver решили избавиться от разнообразия менеджеров зависимостей проекта и перейти на SwiftPM. На практике на SwiftPM удалось перевести только 25 зависимостей из 46.

Почему так случилось, стоило ли оно того и как это реализовано, ребята рассказали в статье:

https://tprg.ru/mW5R

Доклад на YouTube: https://youtu.be/2Q0v-qEV7z4

#ios
Aurora — коллекция компонентов для десктопных приложений на Compose

На днях наконец-то вышел Compose Multiplatform от JetBrains. Если решите попробовать фреймворк в деле, то присмотритесь к Aurora — набору компонентов для создания современных, элегантных и быстрых Compose-приложений:

https://github.com/kirill-grouchnikov/aurora

#compose
👍1
Подборка актуальных вакансий для мобильных разработчиков

Android-разработчик в ОТР
Где: Удалённо
Стек: Android, Coroutines, Java, JSON, JUnit, Kotlin, Mockito, MVVM, REST API, RxJava

Android Software Engineer в Revolut
Где: Удалённо
Стек: Kotlin, Dagger 2, RxJava 2, Room

Android-разработчик в Sportmaster Lab
Где: Москва, Санкт-Петербург, Новосибирск, можно удалённо
Стек: Android, Gradle, HTTP, Java, Kotlin, MVC, MVI, MVP, MVVM, Realm, REST API, Room, SQL, SQLite

Senior iOS Developer в Sportmaster Lab
Где: Санкт-Петербург, Москва, Краснодар, можно удалённо
Стек: HTTP, iOS, Kotlin, Realm, REST API, Swift, Xcode

iOS Software Engineer в Revolut
Где: Удалённо
Стек: iOS, Swift

#вакансии #работа
Доклады секции Mobile конференции DevFest Russia 2021

Декабрь богат на IT-ивенты, и в субботу, 4 декабря, состоялась конференция от сообщества GDG Russia. На мероприятии проводились 3 потока: Web, Cloud/AI/ML и Mobile. Рассказываем о докладах из последней секции:

1. Boost your pet project with Firebase and Google Play
Тимур Ахметгареев рассказал о возможностях консолей Google Play и Firebase и подробно рассмотрел, как запускать pet-проекты с минимальными усилиями, почему важна аналитика и как она связана с self-мотивацией.

2. Расширяем возможности kotlinx.serialization с помощью Arrow Meta
Arrow Meta — это библиотека, позволяющая писать плагины для компилятора, линтеры и другие преобразователи исходного кода. В докладе рассказано о настройке проекта, возможностях библиотеки и разобран реальный use-case добавления global naming strategy в kotlinx.serialization.

3. Google ML Kit — ML на раз-два
Обзор возможностей Google ML Kit, а также как они могут улучшить приложения и как их быстро интегрировать в свой проект.

4. Kotlin Multiplatform. Работаем со старой и новой моделью памяти
В докладе Анна Жаркова рассказала про нативные инструменты для реализации многопоточности в KMM и Kotlin Native, а также про новую версию модели управления памятью и её улучшениях.

5. Flutter и веб-разработка. Тварь ли дрожащая или право имеет?
Современному бизнесу требуются и веб-сайт, и мобильные приложения. Под эти требования выглядит интересным фреймворк Flutter, ведь он позволяет писать приложения для различных платформ. Хорош ли на самом деле Flutter для создания веб-приложений — узнайте в докладе.

#доклады #android #ios #flutter
Удалённое тестирование Android-приложений на реальных устройствах Samsung

Оказывается, у Samsung есть сервис Samsung Remote Test Lab, в котором можно протестировать своё приложение на топовых и бюджетных смартфонах Samsung Galaxy (даже на линейке складных Fold), планшетах и даже умных часах.

Работает это так: вы получаете удалённый доступ к устройству и можете проверить, как приложение работает на конкретной модели. У сервиса даже открыта отдельная лаборатория в России. И пользоваться им можно бесплатно — так отпадает необходимость покупать устройства для тестов.

В статье описан опыт использования Samsung Remote Test Lab: https://tprg.ru/EBcq

#android
Вышла IDE AppCode 2021.3. Что нового?

Если пользуетесь AppCode для разработки iOS- или macOS-приложений, обратите внимание на недавнее обновление IDE. Оно принесло:
— поддержку акторов Swift;
— одновременное автодополнение нескольких ключевых слов;
— улучшенную поддержку документации;
— полнофункциональный редактор файлов Property List;
— точки останова для ошибок.

Подробнее с нововведениями можно ознакомиться в обзоре AppCode 2021.3: https://tprg.ru/EV1b

#ios
Используем App Shortcuts в реальном Android-проекте

В Android можно создать специальные ярлыки для функций приложения (App Shortcuts). Разработчику доступно 3 варианта создания ярлыков:

1. Static shortcuts — статические ярлыки, которые жёстко прописываются в AndroidManifest.
2. Dynamic shortcuts — динамические ярлыки, которые приложение может создавать, обновлять и удалять во время выполнения.
3. Pinned shortcuts — закрепленные ярлыки, которые могут быть добавлены в поддерживаемые лаунчеры как отдельные значки.

Как с ними работать: https://tprg.ru/Xn0Y

#android
Большая подборка экранов с пейволом в iOS-приложениях

В ней собрано около 300 скриншотов примеров paywall screen. Среди них есть как хорошие, так и плохие, но они точно послужат источником вдохновения:

https://adapty.io/mobile-paywall-library

#ui #ios
Стали доступны записи докладов с мобильной онлайн-конференции Mobius 2021 Moscow

В конце ноября состоялась конференция Mobius 2021 Moscow. Если не смогли на неё попасть, ничего страшного: организаторы уже выложили часть выступлений. Делимся наиболее интересными из них:

1. Разочаровавшие паттерны мобильной разработки в 2021 году — как сделать их лучше
В докладе рассмотрены некоторые паттерны мобильной разработки, которые вызывают возмущение и разочарование у пользователей, но не всегда улавливаются разработчиками. Стоит посмотреть из-за спикера Виталия Фридмана и его энергичной и интересной подачи материала.

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

3. Ускоряем сетевой слой ВКонтакте с HTTP/3
Сетевой слой — одна из важнейших частей любого мобильного приложения, и нужно, чтобы он работал максимально стабильно и быстро вне зависимости от типа сети. Чтобы решить проблемы производительности сетевого слоя, во «ВКонтакте» перешли с HTTP/2 на HTTP/3. Именно о сетевых протоколах и их отличиях рассказано в докладе.

Посмотреть остальные доклады на YouTube: https://tprg.ru/shZX

#доклады
👍2
Использование BottomSheet («выдвигающейся шторки») в iOS 15

До iOS 15 для создания «шторки», занимающей половину экрана, разработчики использовали сторонние решения или же реализовывали сами. Такие библиотеки часто оказывались недостаточно гибкими для конкретных проектов.

В новой версии iOS Apple добавила нативную реализацию этого элемента — ​​UISheetPresentationController. Как с ним работать, читайте в статье:

https://tprg.ru/vsx5

#ios
Стал доступен Flutter 2.8

Последнее в этом году крупное обновление фреймворка Flutter принесло много интересного:

существенную оптимизацию производительности Flutter на мобильных устройствах, а также улучшение работы DevTools;
— Dart 2.15;
— множество новых функций и улучшений для Firebase;
— WebView 3.0;
— новые пакеты Flutter Favorite;
— обновлённый DartPad с поддержкой большего количества пакетов, включая Firebase.

Что это значит? Google продолжает активно развивать Flutter, и фреймворк по-прежнему остаётся одним из лучших кроссплатформенных решений. И если захотите вкатиться в Flutter, то по тегу #flutter можете найти полезные материалы.
👍2
Что послушать: подкаст о том, как жизнь формирует UX (или UX формирует жизнь?)

Множество приложений в магазинах имеет ужасный UX (user experience). Такую «болячку» особенно имеют приложения, ориентированные на бизнес. Разработчики не исследуют поведение пользователя, а зря, ведь UX играет важную роль в успехе мобильных приложений

В подкасте ведущие обсудили, чем UX отличается от UI, какие UX-тренды сейчас актуальны и какой объём знаний об UX действительно необходим разработчику.

Послушать: SoundCloud, Apple Podcasts, Яндекс.Музыка, YouTube.

#подкасты #android #ios
Android 12L уже можно полноценно протестировать

Помните Android 12L, которую Google представила в конце октября? Если вкратце, то это тот же Android, только оптимизированный для устройств с большими экранами — планшетов, смартфонов с гибким экраном и хромбуков.

На днях вышла первая бета-версия Android 12L. В ней финализированы 12L API (API level 32) и обновлены инструменты для разработчиков, поэтому новая сборка системы полностью готова к тестированию приложений.

Новую систему можно запустить в эмуляторе Android Studio, на устройствах Pixel (правда, на них не получится оценить все фичи системы) и планшете Lenovo Tab P12 Pro.

Как скачать Android 12L: https://tprg.ru/AyG9

#android
На Flutter теперь проще разрабатывать игры

Вместе с Flutter 2.8 вышла первая версия Flame — модульного игрового 2D-движка на базе Flutter.

Flame ориентирован в первую очередь на быстрое создание игр. Движок включает в себя игровой цикл и основные примитивы: систему компонентов, анимированные спрайты и изображения, выявление коллизий, игровую камеру, систему эффектов и поддержку жестов и ввода.

На Flame уже реализованы как минимум три игры: Tomb Toad, Gravity Runner (на скрине ниже) и Bonfire (веб-игра).

Как работать с Flame: https://docs.flame-engine.org/1.0.0/

#flutter #gamedev
Инструменты разработчика для тестирования Android-приложений

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

В статье рассмотрены инструменты тестирования (от JUnit до Kaspresso) и методологии Test Driven Development (TDD) и Behaviour Driven Development (BDD):

https://tprg.ru/2SRN

#android #начинающим #тестирование
В 2022 году на Windows можно будет запустить игры из Google Play

Google анонсировала Windows-приложение Google Play Games, которое будет запускать игры для Android. При этом сервис поддерживает кроссплей: можно сыграть на телефоне, а затем продолжить с того же места на ПК или планшете на Windows.

Пока неясно, как именно приложение эмулирует среду. Зато известно, что Google Play Games будет работать с Windows 10 и выше.

В этом приложение отличается от эмулятора от Microsoft, который поддерживает только Windows 11. Также Google Play Games предложит библиотеку игр из Play Store, когда эмулятор в Windows 11 может запускать только приложения из Microsoft Store, добавленные в сотрудничестве с Amazon.

#android
Интервью с руководителем разработки Compose Multiplatform

В начале декабря вышел фреймворк Compose Multiplatform от JetBrains. С его помощью можно написать UI десктопного и веб-приложения целиком на Kotlin, и при этом компоненты совместимы с Jetpack Compose.

В честь релиза вышло интервью с с Николаем Иготти, руководителем разработки в команде Compose Multiplatform, где обсудили новый фреймворк, Kotlin и другие темы.

Заваривайте чай или кофе, будет интересно:

https://youtu.be/giHTUAmyFWY

#compose #android #ios