mobi_dev | Unsorted

Telegram-канал mobi_dev - Мобильная разработка

15502

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

Subscribe to a channel

Мобильная разработка

Подборка актуальных вакансий

Senior Android-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет

iOS-разработчик
Где: Москва
Опыт: можно без опыта

iOS-разработчик
Где: удалённо
Опыт: можно без опыта

iOS-разработчик
Где: Москва, Санкт-Петербург, Казань, Пермь, можно удалённо
Опыт: от 2 лет

Middle iOS-разработчик
Где: Москва
Опыт: от 3 лет

#вакансии #работа

Читать полностью…

Мобильная разработка

Преобразования проекта из Figma в Jetpack Compose

Relay — плагин от Google для Android Studio, который импортирует UI-пакеты и создаё‎т код Jetpack Compose.

На данный момент плагин находится в стадии альфа-тестирования, но уже есть несколько доступных уроков с объяснением реализации данной библиотеки в проекте. Один из них от Филлипа Лакнера:

https://youtu.be/byOmrmXG4yQ

#compose #android

Читать полностью…

Мобильная разработка

5 полезных расширений в VS Code для Flutter-разработчиков

1. Better Comments — позволяет выделять комментарии разными цветами.

2. Pubspec Assist — для быстрого поиска. Как только вы введёте название пакета, расширение автоматически отобразит последний пакет в вашем pubspec.yaml-файле.

3. Awesome Flutter Snippets — это коллекция сниппетов для часто используемых методов, классов и виджетов во Flutter. Также, расширение позволяет писать код быстрее, например набрав только singleChildSV для SingleChildScrollView.

4. Flutter Stylizer — организует Flutter классы последовательным образом.

5. Json to Dart Model — преобразует скопированный вами JSON в класс Dart (есть ограничения).

#flutter

Читать полностью…

Мобильная разработка

Основы MockK для написания юнит-тестов

MockK — библиотека с открытым исходным кодом для тестирования Kotlin. Используя MockK, можно изменять зависимости в тестируемых классах с помощью заглушек и моков (stubs & mocks), имитируя поведение реальных объектов.

В этом видеоуроке автор подробно рассказывает, зачем нужна эта библиотека MockK, а также как подключить и написать тесты с её помощью:

https://youtu.be/60uVfjh7QdE

#kotlin

Читать полностью…

Мобильная разработка

Делегаты в Android приложениях

Одна из полезных фич в Kotlin — делегированные свойства или просто делегаты. По сути, делегат — это всего лишь класс с двумя методами: для получения и присвоения свойству.

Пример из этой статьи основан на паттерне MVVM. Логика приложения достаточно упрощена, RecyclerView заменён на ScrollView + Linearlayout, чтобы проще организовать код и объяснить применение делегатов в Android-приложении:

https://habr.com/ru/company/constanta/blog/696162/

#kotlin #android

Читать полностью…

Мобильная разработка

Исследование: автоматизация тестирования в проектах

Команда Kaspresso провела опрос среди разработчиков из 30 разных компаний (Spotify, Revolut, HH и другие) по автотестам в их приложениях. Результаты из исследования:

1. У 1/3 команд написано больше 1000 UI тестов, рекорд — 11000.
2. Более половины запускают тесты на PR, около 25% — на ночных сборках.
3. Компании в среднем ограничиваются только 5 эмуляторами.
4. 90% опрошенных используют нативные тесты.

Также в исследовании были вопросы про используемые технологии и как компании организовывает инфраструктуру, подробнее в статье:

https://habr.com/ru/post/695244/

#исследование

Читать полностью…

Мобильная разработка

Хорошо ли вы знаете Java?

Совместно с компанией «Иннотех» подготовили для вас тест по Java с интересными фактами, чтобы вы могли проверить свои эрудицию и интуицию.

Переходите по ссылке и попробуйте ответить правильно на все 10 вопросов: https://tprg.ru/YrF3

Реклама ООО Группа компаний Иннотех

Читать полностью…

Мобильная разработка

Модульность и SwiftUI в современном iOS-приложении

Как эффективно реализовать модульную архитектуру с помощью SwiftUI? В этом статье разбираются некоторые подходы:

— как работать с обратными вызовами и потоками данных,
— основы использования Combine и SwiftUI,
— реализация ObservableObject,
— почему следует избегать использования EnvironmentObject.

Подробнее:

https://levelup.gitconnected.com/ios-app-as-a-microservice-using-swiftui-in-modular-app-f40182f5e52a

#swiftui #ios

Читать полностью…

Мобильная разработка

Apple обновила гайдлайны к App Store

— Если некоторые функции зависят от учётной записи пользователей в приложении, то разработчики должны предоставить полный доступ к приложению с активной демо-учётной записью или полнофункциональным демо режимом для Review.

— Приложения могут использовать NFT, но с некоторыми ограничениями. Например, приложения могут позволять пользователям просматривать NFT при условии, что там нет кнопок, внешних ссылок или других призывов к действию для покупки.

— Стандарт «умного дома» Matter: приложения должны использовать фреймворк Apple для поддержки Matter. Если используются другие Matter SDK, то они должны быть сертифицированы.

Подробнее о всех изменениях по ссылке:

https://developer.apple.com/news/?id=xk8d7p8c

#ios

Читать полностью…

Мобильная разработка

Интеграция JS в Android приложение

Перед разработчиками онлайн-кинотеатра Premier стояла непростая задача — из-за ограничений в библиотеке, с которой они работали для Android TV, требовалось подключить web-версию к проекту.

Подходящего фреймворка для этой задачи найти было сложно, поэтому команда решила переписать простой WebView в JS-интерпретатор. Что из этого получилось, рассказывается в статье:

https://habr.com/ru/company/gazprommedia/blog/694998/

#android

Читать полностью…

Мобильная разработка

Как реализуется технология Flux на SwiftUI?

OTUS приглашает 3 ноября в 20:00 по МСК на бесплатный вебинар «Пример реализации технологии Flux на SwiftUI».

Вместе с экспертом в мобильной разработке Николаем Баклановым вы рассмотрите некоторые проблемы и сложности реализации MVVM на SwiftUI. И попробуйте применить Flux архитектуру для реализации небольшого приложения.

Регистрация на вебинар: https://otus.pw/6wGl/

Реклама «ООО Отус онлайн-образование»

Читать полностью…

Мобильная разработка

Как уменьшить размер приложения с помощью Dynamic delivery

Размер приложения — важная метрика, которая влияет на количество установок. Однако, когда в проект добавляются новые библиотеки или функционал — поддерживать эту метрику становится всё сложнее.

Почему бы не предоставить пользователю возможность подгружать модули по мере необходимости? Решить эту задачу можно с помощью Dynamic delivery.

О нюансах миграции фич в динамические модули и влиянии Dynamic delivery на архитектуру рассказал Азамат Черчесов, Senior Mobile Developer из «Лаборатории Касперского»:

https://tprg.ru/j36a

#android

Читать полностью…

Мобильная разработка

Как создать простой видеоплеер с помощью Jetpack Compose и ExoPlayer

ExoPlayer — библиотека для воспроизведения аудио и видео с открытым исходным кодом, которая является альтернативой API MediaPlayer на Android.

В этом видеоуроке показано, как используя Media 3, можно просто реализовать видеоплеер:

https://youtu.be/JX1fwti2LI4

#android #compose

Читать полностью…

Мобильная разработка

Использование LiveData на Android

В статье реализовано простое приложение для демонстрации работы и поведения компонентов lifecycle-aware в Live Data, используя методы setValue(), postValue(), observate() и observeAsState().

Также автор сделал сравнительный анализ этих функций, например, когда лучше использовать setValue() или postValue(), чем отличаются друг от друга observate() и observeAsState():

https://vtsen.hashnode.dev/exploring-android-livedata-usages-and-behaviors#heading-add-logging-in-observeasstate

#android

Читать полностью…

Мобильная разработка

Вышла стабильная версия Composite Material 3

Библиотека разработана на Jetpack Compose и Material 3. В статье рассматриваются:

— цветовые схемы и динамические цвета,
— компоненты и плагины в Material 3,
— шрифты и размер экрана.

Источник: https://android-developers.googleblog.com/2022/10/material-design-3-compose-stable.html?m=1

#android

Читать полностью…

Мобильная разработка

Руководство по Passkey на iOS 16

В статье разбирается новая система авторизации пользователей, которую Apple представила на WWDC22.

Для примера, автор реализует простое приложение, где пользователь должен ввести свои данные — username (имя или ник) для регистрации и сохраняет Passkey на устройство. В статье также объясняются API запросы для бэкенда, чтобы добавить Passkey в проект:

https://quickbirdstudios.com/blog/ios-passkeys/

#ios

Читать полностью…

Мобильная разработка

Weekend Mobile Offer — уже 19-20 ноября

Как получить офер в Яндекс за 2 дня? Участвовать в Weekend Mobile Offer. Ближайший — 19-20 ноября.

Если вы, или тот, кого вы знаете, имеете опыт разработки не менее трех лет на iOS, Android или Flutter, смело жмите на кнопку и регистрируйтесь.

Онлайн-отбор закончится 16 ноября. 20 ноября тех, кто его пройдёт, пригласят на технические собеседования и встречи с нанимающими командами.

Реклама ООО «Яндекс»

Читать полностью…

Мобильная разработка

Виды штрих-кодов, особенности и обходные пути в Apple Wallet

Наверняка вы знаете, что Apple Wallet поддерживает только определённые типы штрих-кодов — в основном это 2D.

В этой статье автор собрал в один список все доступные виды штрих-кодов, а также объяснил проблемы их создания для Apple Wallet:

https://tprg.ru/sdk5

#iOS

Читать полностью…

Мобильная разработка

Оптимизация изображений с помощью расширений Firebase на Flutter

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

Resize Image — это библиотека, которая позволяет создать новое изображение меньшего размера и сохранить его в хранилище Firebase.

Подробнее о том, как настроить плагин в проекте, а также как правильно прописать путь после изменений фото по ссылке:

https://invertase.io/blog/image-optimization-with-firebase-extensions

#flutter

Читать полностью…

Мобильная разработка

Оптимизация приложений (Go edition): уроки из Google apps

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

Часть 1: Требования к оперативной памяти, разбор onTrimMemory(), оптимизация использования памяти в Android приложениях.
Часть 2: Задержка при запуске приложений, причины и оптимизация.
Часть 3: Разбор инструментов: meminfo, App Startup, CPU Profiler Baseline Profiles, Perfetto и других.

#android

Читать полностью…

Мобильная разработка

Доклады с Android Dev Summit 2022

На прошлой неделе прошла онлайн-конференция от Google для мобильных разработчиков. Команда Android поделилась способами улучшения качества Android-приложения для различных устройств.

Все доклады доступны в плейлисте на YouTube.

Читать полностью…

Мобильная разработка

Как улучшить код в проекте на Flutter

В этой статье автор реализовал несколько примеров расширений с объяснением, как они используются: для форм, операций со списками, изображений и т.д.

Эти простые советы помогут улучшить код начинающим и сделают его более читаемым на Dart:

https://tprg.ru/5Ztu

#flutter #dart

Читать полностью…

Мобильная разработка

JetBrains объявила конкурс на приложения, написанные на KMM

Требования к проекту:
— Приложение должно работать как минимум на двух разных платформах.
— Проект на свободную тему, но JB будем оценивать работу, основываясь на креативности идеи и на том, как она подкрепляется мультиплатформенностью Kotlin.
— Проект должен быть индивидуальным. Можно использовать и другие проекты с открытым исходным кодом, но у каждого проекта должен быть один автор.

3 победителя поедут на KotlinConf’23.

Источник:

https://blog.jetbrains.com/kotlin/2022/10/join-the-kotlin-multiplatform-contest/

#kotlin

Читать полностью…

Мобильная разработка

Подборка актуальных вакансий

iOS-разработчик
Где: Москва
Опыт: можно без опыта

iOS-разработчик
Где: удалённо
Опыт: можно без опыта

iOS-разработчик
Где: Москва, Санкт-Петербург, Казань, Пермь, можно удалённо
Опыт: от 2 лет

Middle iOS-разработчик
Где: Москва
Опыт: от 3 лет

Senior Android-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет

#вакансии #работа

Читать полностью…

Мобильная разработка

Как избежать merge-конфликтов в Xcode

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

Одним из них является файловая структура проекта. Возможно, вы сталкивались с конфликтами в project.pbxproj файле. К счастью, есть готовые решения, которые помогают решать эту проблему: XcodeGen, SwiftGen, Xcake.

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

https://betterprogramming.pub/how-to-avoid-merge-conflicts-in-xcode-projects-a0202be2ac73

#ios

Читать полностью…

Мобильная разработка

5 обновлений в Play Console для отслеживания статистики приложения

1. При выпуске приложения теперь можно увидеть размер приложения (предыдущего релиза) и размер обновления.

2. Если вы используйте Play Asset Delivery или Play Feature Delivery, то подробная о доставке всех ассетов доступна на странице статистики.

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

4. В App bundle explorer можно проверить, сколько весит приложение для каждой модели устройства.

5. Многие метрики теперь доступны в App Dashboard, где вы можете отслеживать эти измерения с течением времени наряду с другими показателями приложения.

Источник: https://android-developers.googleblog.com/2022/10/5-play-console-updates-to-help-you-understand-app-delivery-performance.html?m=1

#android

Читать полностью…

Мобильная разработка

Создание Bounce эффекта, используя Compose Backdrop Layer

Небольшой урок, как создать анимацию и не запутаться в слоях в BackdropScaffold, используя также Animatable API. В конце статьи можно найти шпаргалку по Animation в Compose:

https://proandroiddev.com/bounce-effect-with-compose-backdrop-layer-bd9f21f797a6

#compose

Читать полностью…

Мобильная разработка

Бесплатное обучение по созданию искусственного интеллекта с нуля

Всего за 3 вечера под руководством Дмитрия Романова, основателя Университета Искусственного Интеллекта, вы с легкостью напишете свой первый искусственный интеллект

Какие нейронные сети вы создадите?
— Классификация марок молока
— Классификация людей на входящих и выходящих из автобуса
— Обнаружение возгораний
— Оценка стоимости квартир
— Классификация отзывов на Teslа
— Оценка резюме соискателей
— Прогнозирование стоимости полиметаллов
— Сегментация изображений самолетов
— Распознавание команд умного дома⠀

Лучше освоить навыки создания нейронных сетей вам помогут домашние задания с проверкой от кураторов.

Приходите на бесплатное обучение и напишите искусственный интеллект за 3 вечера. Регистрация по ссылке

Реклама ООО «Терра Эй Ай»

Читать полностью…

Мобильная разработка

Советы и рекомендации по улучшению работы Android Studio

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

https://blog.appcircle.io/article/12-android-studio-tips-and-shortcuts-to-navigate-your-codebase-faster

Какой способ вы чаще всего используйте?

#android

Читать полностью…

Мобильная разработка

Гайд по Dart CLI

Если вы хотите стать Flutter-разработчиком, то наверняка интересуетесь углубленным изучением языка Dart. В этой статье небольшое руководство, как создать CLI-приложение на Dart и обрабатывать пользовательский ввод в этом приложении:

https://tomicriedel.medium.com/89bbcef0318

#flutter

Читать полностью…
Subscribe to a channel