Мобильная разработка #1
Open in Telegram
Всё о создании приложений под Android и iOS в одном месте. 🔹 Инструменты, библиотеки и ресурсы для ускорения работы. 🔹 Статьи и гайды для разработчиков любого уровня. 🔹 Тренды мобильной разработки и новости индустрии. Реклама @evgenycarter
Show more3 877
Subscribers
-224 hours
-57 days
-430 days
Posts Archive
Детские ошибки при сборке Gradle-приложений
Всем привет! Меня зовут Никита Горбунов, я технический лидер Android. Сейчас я работаю над мобильным банком Альфы, поддерживаю его инфраструктуру и CI/CD-систему. Я много работаю с Gradle, и мне это нравится.
Я давно интересуюсь способами, позволяющими ускорить сборку приложения. В статье я покажу результаты моих исследований и несколько способов разогнать Gradle-сборку, проверенных мною. Материал будет полезен как новичкам, так и опытным разработчикам, поэтому устраивайтесь поудобнее.
https://habr.com/ru/companies/alfa/articles/876382/
#Android
👉 @developer_mobila
В iOS разработчики могут использовать фреймворк LocalAuthentication для интеграции биометрической аутентификации, такой как Face ID или Touch ID, в свои приложения. Это позволяет повысить безопасность и удобство использования, предоставляя пользователям быстрый и надежный способ входа.
Для реализации биометрической аутентификации необходимо импортировать фреймворк LocalAuthentication и создать экземпляр класса LAContext. Затем можно вызвать метод evaluatePolicy(_:localizedReason:reply:), который отображает системный интерфейс для аутентификации пользователя. Важно обрабатывать возможные ошибки, такие как отсутствие настроенной биометрии на устройстве или отказ пользователя от аутентификации.
Рекомендуется предоставлять пользователям альтернативные методы входа в случае недоступности биометрической аутентификации, например, с использованием пароля или PIN-кода. Это обеспечит доступность приложения для всех пользователей, независимо от настроек их устройств.
https://tanaschita.com/ios-local-authentication/
#ios
👉 @developer_mobila
ComposeLevitation: эффект левитации для элементов UI
ComposeLevitation — это мощная библиотека Compose, которая предоставляет вам возможность легко создавать и настраивать эффекты левитации, добавляя интерактивный штрих к элементам пользовательского интерфейса. Умеет реагировать на жесты нажатия и перетаскивания, полностью настраиваема, можно сделать голографический эффект.
https://github.com/GIGAMOLE/ComposeLevitation
#Android
👉 @developer_mobila
⚡️ В сети начали массово сливать курсы и книги известных онлайн школ по айти
Вот отсортированная база с тонной материала (постепенно пополняется):
БАЗА (4687 видео/книг):
(363 видео, 87 книги) — Python
(415 видео, 68 книги) — Frontend
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++
(343 видео, 87 книги) — Java
(176 видео, 32 книги) — Git
(293 видео, 63 книги) — C#
(174 видео, 91 книги) — DevOps
(167 видео, 53 книги) — PHP
(227 видео, 83 книги) — SQL/БД
(163 видео, 29 книги) — Linux
(114 видео, 77 книги) — Сисадмин
(107 видео, 43 книги) — BA/SA
(181 видео, 32 книги) — Go
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(137 видео, 93 книги) — DS/ML
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — Дизайн
(129 видео, 73 книги) — QA
(213 видео, 63 книги) — Rust
(121 видео, 24 книги) — 1С
(136 видео, 33 книги) — PM/HR
Скачивать ничего не нужно — все выложили в Telegram
Опыт прохождения собеседования для iOS-разработчика в Walmart
Недавно мне довелось пройти собеседование на должность iOS-разработчика SDE-III в Walmart, и я с радостью сообщаю, что прошел его! Это путешествие было не просто получением работы — оно стало свидетельством моего трудолюбия, подготовки и упорства.
В этом посте я расскажу вам о процессе прохождения собеседования, задаваемых вопросов и о том, как этот опыт укрепил мою уверенность в себе как в iOS-разработчике.
https://medium.com/@rishixcode/interview-experience-for-sde-iii-ios-at-walmart-9ab411256c28
#ios
👉 @developer_mobila
👩💻 А ты справишься с тестом по Kotlin?
🏆 Пройди тест из 10 вопросов, проверь свой уровень знаний и получи скидку на онлайн-курс «Kotlin Backend Developer. Professional» от OTUS!
Если успешно пройдешь тест, сможешь забронировать место в группе по выгодной цене! И еще дарим промокод Kotlin5
🎫 Курс можно приобрести в рассрочку
➡️ Пройти тест и забрать скидку: https://vk.cc/cIJZWr
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Тайны рейтингов: как добиться стабильно высокого рейтинга Android-приложения?
По данным исследований (Data.ai, Sensor Tower, Statista), Android-приложения имеют на 10-30% более низкие оценки, чем iOS-аналоги. Например, приложение может получить 4,5 на iOS и 3,5-4,0 на Android.
Меня зовут Анастасия Симонова, я Android-разработчик в команде Домклик. Поделюсь нюансами разработки под Android и предложу некоторые решения для избежания проблем в будущем. Готовы? Приступим!
Важно понимать, что в крупных корпоративных приложениях рейтинг зачастую зависит не только от качества самого приложения, но и от общего уровня сервиса, предоставляемого пользователям. Если проанализировать отзывы, оставленные пользователями, становится очевидным, что многие из них касаются не функциональности приложения, а проблем с обслуживанием или недовольством работой компании в целом. Например, распространенные комментарии включают: "Менеджеры ничего не знают", "В чате не отвечают", "Заказал обратный звонок — 3 дня никто не перезванивает", "Ставка 25%, кто будет брать ипотеку?". Поэтому важно не только разрабатывать качественное приложение, но и обеспечивать высокий уровень сервиса. В этой статье мы сосредоточим внимание на корнеркейсы Android-разработки, которые могут повлиять на пользовательский опыт и, соответственно, на рейтинг приложения.
https://habr.com/ru/companies/domclick/articles/879364/
#Android
👉 @developer_mobila
⚡️Кросс-платформа — твой новый шаг в развитии iOS!
Ты знаешь, как делать приложения для iOS. А теперь представь, что один и тот же код может работать и на iOS, и на Android. Пора узнать, как реализовать это с помощью KMP?
На открытом вебинаре 19 февраля в 20:00 мск ты узнаешь:
- Что такое кросс-платформенная разработка и почему она — будущее;
- Как сделать iOS-приложение мультиплатформенным;
- Как использовать актуальные инструменты Compose Multiplatform.
Зарегистрируйся на открытый урок в преддверие старта курса «iOS Developer»! Все участники получат скидку на обучение. Встречаемся 19 февраля в 20:00 мск.
👉Регистрируйтесь: https://vk.cc/cIGi3C
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576SwiftUI - Урок по созданию загрузчика с вращающимися символами
0:00 Introduction
0:30 Project Setup
1:55 Circle Text View
5:20 Circular Text Track View
7:52 Putting it all together
источник
#ios
👉 @developer_mobila
🐶 PuppyGit — минималистичный Git-клиент на Flutter
Если вам нужен удобный и легковесный Git-клиент с кроссплатформенной поддержкой, обратите внимание на PuppyGit. Этот проект, написанный на Flutter, позволяет работать с репозиториями Git без лишней сложности.
🔹 Поддержка основных Git-операций
🔹 Простой и интуитивный интерфейс
🔹 Кроссплатформенность: Android, iOS, Windows, macOS и Linux
🔹 Открытый исходный код
https://github.com/catpuppyapp/PuppyGit
#Android
👉 @developer_mobila
🚀 Хотите вывести свои Flutter-приложения на новый уровень?
Дополненная реальность — это будущее мобильных технологий, и мы покажем, как её использовать во Flutter! 📅 19 февраля в 🕗 20:00 мск вы узнаете, как создавать AR-приложения с помощью ARKit, ARCore и Flutter: от распознавания поверхностей до взаимодействия с 3D-объектами.
👨💻 Спикер Дмитрий Золотов — Flutter+Kotlin Developer в Yandex.
Начните внедрять AR в свои проекты, создавайте уникальный пользовательский опыт и станьте востребованным разработчиком.
👇Регистрируйтесь на открытый урок перед стартом курса «Flutter Mobile Developer». Участникам — скидка на обучение!
Записаться: https://vk.cc/cIy8x6
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Декларативный подход в организации gradle зависимостей в Android-проектах
В многомодульных приложениях Android существует проблема организации зависимости gradle. Каждая зависимость указывается отдельно. Примерно вот так
dependencies {
implementation("androidx.core:core-ktx:1.13.1")
implementation("androidx.appcompat:appcompat:1.7.0")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.4")
implementation("androidx.activity:activity-compose:1.9.1")
implementation(platform("androidx.compose:compose-bom:2024.08.00"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.ui:ui-graphics")
implementation("androidx.compose.ui:ui-tooling-preview")
implementation("androidx.compose.material3:material3")
implementation("androidx.navigation:navigation-compose:2.8.0")
debugImplementation("androidx.compose.ui:ui-tooling")
implementation("com.google.dagger:hilt-android:2.51.1")
kapt("com.google.dagger:hilt-android-compiler:2.51.1")
kapt("androidx.hilt:hilt-compiler:1.2.0")
implementation(project(":mymodule"))
...
}
https://habr.com/ru/articles/845694/
#Android
👉 @developer_mobilaСоздание динамического перетаскиваемого ScrollView с UIKit для SwiftUI
В одном из наших недавних проектов мы столкнулись с интересной задачей — переработать интерфейс карты и поиска. В реализованном дизайне используется гибридное состояние: карта располагается за сворачиваемым списком внизу экрана, аналогично тому, как это реализовано в популярных приложениях, таких как Apple Maps и Google Maps!
Этот подход принес ряд сложностей, особенно учитывая, что нам нужно было реализовать эту функцию внутри SwiftUI, при этом поддерживая iOS 15. Одной из главных трудностей стала ограниченная возможность управления представлением, которая стала доступна только в iOS 16+ с presentationDetents. Более подробно о presentationDetents я планирую рассказать в одном из следующих материалов!
https://medium.com/livefront/creating-a-dynamic-draggable-scrollview-with-uikit-for-swiftui-13bd25c2954c
#ios
👉 @developer_mobila
🔥 Открытый урок «Разработка монолитного приложения со Spring»
🗓 18 февраля в 19:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Kotlin Backend Developer. Professional» от Otus.
На вебинаре рассмотрим:
✔️ монолитную архитектуру (преимущества и недостатки);
✔️ фреймворк Spring;
✔️ особенности разработки со Spring в Kotlin;
✔️ интеграцию транспортных моделей в приложение;
✔️ упаковку и запуск в Docker.
🔗 Ссылка на регистрацию: https://vk.cc/cIwnXI
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Инъекция зависимостей в Compose
В этой статье мы подробно рассмотрим, как Hilt обеспечивает и определяет зависимости в традиционном приложении для Android и как Compose меняет наш подход.
https://medium.com/androiddevelopers/dependency-injection-in-compose-a2db897e6f11
#Android
👉 @developer_mobila
🔥 Хотите писать функциональный и выразительный код? Kotlin и DSL — вот ваш путь!
На открытом вебинаре мы научим вас создавать доменно-специфические языки на Kotlin. Разберём, как сделать код компактным, выразительным и удобным для решения узкопрофильных задач.
Это не просто теория. Мы покажем реальные примеры и расскажем, как применять DSL для автоматизации, работы с конфигурациями и других задач.
Спикер Сергей Прощаев — ведущий инженер-Java-разработчик в компании ПАО «Сургутнефтегаз».
➡️ Регистрируйтесь на вебинар 11 февраля в 19:00 мск и получите скидку на большое обучение «Kotlin Backend Developer. Professional»: https://vk.cc/cIflwA
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Bottom Sheets that... just work
В Android-разработке Bottom Sheet – это всплывающее окно внизу экрана, которое часто используется для отображения дополнительной информации или действий.
Ключевые моменты из туториала:
🔹 Использование ModalBottomSheet из Material 3.
🔹Работа с BottomSheetScaffold для лучшей интеграции в Compose.
🔹Управление состоянием через rememberModalBottomSheetState().
🔹Примеры кода для создания кастомных Bottom Sheets.
https://composables.com/jetpack-compose-tutorials/bottom-sheets-that-just-work
#Android@developer_mobila
👉 @developer_mobila
🤖 Пройди тест по Flutter и проверь свои знания, готов ли ты к обучению на курсе.
Ответишь — пройдешь на курс "Flutter Mobile Developer" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса
За 5 месяцев обучения вы научитесь создавать современные кроссплатформенные приложения с помощью Flutter, а также создадите свой аналог Telegram, CoinMarketCap, Todoist.
Вас ждёт практические домашние задания, которые помогут вам не только применить знания на практике, но и помочь в реализации проектной работы.
➡️ ПРОЙТИ ТЕСТ: https://vk.cc/cIfhOf
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Прочие оптимизации кода Gradle Convention Plugins, выводы по результатам использования подхода
В предыдущих статьях мы подготовили и настроили базовый модуль для написания Gradle Convention Plugins, написали несколько convention-плагинов в файлах -.gradle.kts, сделали еще один модуль и создали convention-плагины на базе kotlin-классов. В заключительной части мы немного порефакторим написанный код, попытаемся настроить области видимости convention-плагинов и extension-функций для конфигурации сборки, а также подведем итоги.
https://habr.com/ru/companies/tbank/articles/846340/
#Android@developer_mobila
👉 @developer_mobila
Что сложнее, iOS или Android?
В новом выпуске подкаста "Сквозь VK" обсудили как работает показ VK-роликов в OK и Дзен-статей в лентах других платформ, да и в целом все последние тренды мобильной разработки. В гостях Дмитрий Мовчан (Android, Дзен) и Александр Крайнов (iOS).
Например, теперь в ленте Одноклассников можно увидеть посты со звездочкой Дзена — это статьи, которые открываются прямо внутри OK благодаря специальному SDK, также система работает и с клипами из ВКонтакте.
Отдельно обсудили Kotlin Multiplatform (KMM) как часть современного стека разработки. Интересно, что даже базовые библиотеки для работы с сетью и хранением данных постепенно переписываются с учетом поддержки KMM. Спикеры поделились опытом использования этой технологии и особенностями интеграции с iOS-разработкой.
Подробный технический разбор можно посмотреть тут.
Available now! Telegram Research 2025 — the year's key insights 
