Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
9.85K subscribers
1.45K photos
68 videos
52 files
4.2K links
Все самое полезное для мобильного разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4adec1b17b35b6c0d8389
Download Telegram
🤖 Вышла бета-версия iOS 18.2 с Apple Intelligence

Сегодня компания Apple выложила первые бета-версии грядущих обновлений iOS 18.2, iPadOS 18.2 и macOS Sequoia 15.2 для тестирования разработчиками.

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

Image Playground (приложение Apple для создания изображений, которое может создавать с помощью текстовых подсказок).
Image Wand (Генерация по грубому эскизу с Apple Pencil на iPad).
Genmoji (это новые кастомные emoji).
Интеграция Siri с ChatGPT (для выполнения определенных запросов, но только с разрешения пользователя).
Visual Intelligence (функция, которая позволяет получать информацию о том, что находится вокруг вас).
Инструменты для письма (Apple улучшает функцию Writing Tools, добавляя возможность вносить изменения по своему усмотрению).

Новые бета-версии включают API для разработчиков, позволяющие добавлять инструменты Writing Tools, Genmoji и Image Playground в приложения сторонних разработчиков.

На данный момент бета-версия доступна только разработчикам, у которых есть устройство с поддержкой Apple Intelligence.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3
Экономьте время, копируя готовый код в свой проект

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

Всё просто! Выбираете любой элемент, и наведении курсора на любой из экранов вы увидите кнопку «Скопировать код». Нажмите на него, и все готово — вставьте код в свой проект.

Ссылка на проект 👈
👍2
💪 Обновление Apple TestFlight: переработанный дизайн и критерии тестирования

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

Также добавили опцию Tester Criteria. С её помощью разработчики могут указать список устройств, для которых нужно провести тестирование. Можно выбрать определённую модель iPhone и указать версию iOS. Критерии применяются как к публичным ссылкам на тестирование, так и к частным приглашениям.

Помимо этого появилась статистика. Разработчики теперь могут видеть, сколько пользователей просматривали приложение в TestFlight и сколько из них решили установить бета-версию. Также в отдельном пункте показывается, сколько тестировщиков не соответствует установленным критериям тестирования.
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍4🥰1
Встречаем yx_scope: DI-фреймворк для работы со скоупами в открытом доступе

Для больших проектов не всегда хватает одного модуля: иногда надо пошарить какие‑нибудь классы или UI‑элементы. Так со временем проект дробится на много мелких модулей, которые так или иначе связаны разного рода зависимостями. И если за этим не следить, то рано или поздно структура проекта может стать запутанной.

Сложности подтолкнули Яндекс к поиску собственного решения, которое удовлетворяло бы всем требованиям. И теперь они готовы поделиться им с комьюнити: решение — это группа библиотек yx_scope.

📖 Читать статью
😺 Ссылка на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
iOS 18 для разработчиков: Ключевые изменения в UIKit

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

В этой статье автор делится и показывает самые интересные обновления в UIKit — новый TabBar, анимации, совместимость UIKit/SwiftUI и многое другое.
👍31
🔒 Пример взлома покупок в Android-приложении и защита от этого

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

📖 В этой статье автор рассказывает о том, как Frida, может обойти механизмы биллинга в приложениях для Android. Также показывает, как можно взломать небезопасные процессы покупок и что могут сделать разработчики.
👍2🔥1
#вопросы_с_собеседований

Kotlin

Вопрос: Как создать «статический» метод для перечисления в Kotiln?

В классе enum можно определить объект класса:

enum class CircleType {
FIRST,
SECOND,
THIRD;
companion object {
fun random(): CircleType = FIRST
}
}

Потом вы сможете вызывать эту функцию как CircleType.random().
🥱9👍32🌚1
Решение проблемы race condition в Kotlin корутинах

Синхронизация корутин в Android имеет огромное значение для обеспечения безопасности и эффективности многопоточности. Коррутины упрощают управление асинхронными задачами, но без должной синхронизации могут возникнуть проблемы, такие как race condition, что приведет к неправильному поведению приложения.

📖 Существует 6 способов решения проблемы состояния гонки.
😁2
This media is not supported in your browser
VIEW IN TELEGRAM
Создание анимаций между view в SwiftUI

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

Где используются такие анимации:

– Навигация между экранами.
– Добавление (или удаление) элементов из списка.
– Показ модальных вьюх.

📖 Как создаются такие эффекты (и их комбинация) — узнать можно в этой статье.
🔥3👏2
🕐 Делаем кастомный Date and Time picker как в Telegram на Kotlin Jetpack Compose

Вдохновившись колесиками для выбора времени и даты напоминаний Telegram, автор решил сделать на одном из своих пет‑проектов что‑то подобное. Первой мыслью было — найти этот код в исходниках Telegram, но т.к. скорее всего, у них это написано на Java, решил не тратить время на раскопки в Java‑коде, и сделал это на Jetpack Compose.

📖 Как сделать элемент с аналогичной функциональностью и внешне чем-то похожий на телеграмовский
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰5
#дайджест для Android-разработчиков 👋

🔹 ByteWeaver в Open Source: инструментирование байт-кода Java во имя великого блага.

🔹 Разработка дизайна на SDUI с Jetpack Compose and Firebase.

🔹 Официальный релиз Koin 4.0.

🔹 Использование Kotlin 2.0 для разработки.

🔹 Размер имеет значение: как измерить и уменьшить вес Android-приложения

🔹 Стань лучше с помощью Compiler Explorer.

🔹 Декларативный подход в организации gradle зависимостей в Android-проектах.

🔹 Как легко рисовать на GoogleMaps с помощью Compose?
👍1
В комментариях под этим постом вы можете сбросить напряжение и послать туда всё, что накопилось за неделю, месяц и даже за год.
👏5
weak vs strong ссылки в Swift. 🚀

При работе с объектами важно правильно управлять памятью, и вот здесь на помощь приходят — weak и strong ссылки!

🔹 Strong ссылки — это те, что «держат» объект в памяти. Если на объект есть хотя бы одна strong ссылка, он останется в памяти. Это удобно, но есть риск создания циклических ссылок, что может привести к утечкам памяти!

🔹 Weak ссылки, напротив, не удерживают объект в памяти. Если на объект остаются только weak ссылки, он будет удалён из памяти. Это полезно для избежания циклов, например, когда объекты ссылаются друг на друга.

💡Используйте strong ссылки, когда нужно гарантировать, что объект будет жить, и weak ссылки, чтобы избежать утечек памяти!

#Swift #iOS
🥱5🔥32👏1
🚀 GitHub Copilot в Xcode!

Нейросетевой помощник GitHub Copilot расширяет свои возможности, теперь он доступен для Xcode (Public Preview)!

Что может Copilot в Xcode?
• Предлагать варианты завершения кода в режиме реального времени
• Поддерживать языки Swift и Objective-C
• Автоматически подбирать целые блоки кода, а не только отдельные строки
• Помогать избежать уязвимостей и некачественного кода

Чтобы подключить Copilot в Xcode, нужно установить расширение из официальной инструкции.

👉 GitHub Docs
🤩5
📌 Flutter в Telegram Mini Apps!

Telegram Mini Apps — это одно из самых популярных и быстроразвивающихся направлений в Telegram. Благодаря мини-приложениям, Telegram стал не только мессенджером, но и мощной платформой для различных сервисов, доступных прямо внутри чатов.

А Flutter, в свою очередь, стремительно завоёвывает сердца разработчиков благодаря кросс-платформенности и гибкости.
Но насколько сложно совместить эти две технологии? 🤔

Ответ вы найдёте в статье, где автор рассказывает про практическое применение Flutter при разработке Telegram Mini App и делится результатом!

📖 Читать статью
#Flutter
🔥4🌚1
Бу!

Сегодня мы в костюме шестидневной рабочей недели! 😅
А вы как справляетесь с нагрузкой?
Делитесь своими лайфхаками и мемами — поддержим друг друга! 🧑‍💻

#интерактив
❤‍🔥5
💻🤔 Код сожаления: 10 ошибок, о которых жалеют даже опытные программисты

В программировании полно разных путей и нет единственно правильного способа достичь вершины мастерства. Но есть общие ловушки.


✔️Читать статью
🤩1🥱1
Пятничный #дайджест для мобильщиков

🍏 iOS 18 для разработчиков
Статья-обзор ключевых изменений в UIKit

🤖 Гайд для новичков в Android разработке
Статья про написание Android-приложения, которое не будет стыдно положить в портфолио.

⚙️ Flutter-приложения на Авроре
Статья про создание Flutter-приложения на Авроре

🍏 Objective-C не кусается
Статья про то, как перестать бояться Legacy и стать настоящим iOS-ниндзя

🤖 Опыт использования Dynamic Feature Delivery
Статья про динамические модули в приложениях на Android
1🔥3❤‍🔥1😍1
Хотите аналог Postman для МП?

Inspektify — KMP библиотека для Android и iOS с возможность отслеживания сетевых операций в реальном времени на основе Ktor

👉GitHub
#iOS #Android #Kotlin
1🥰4🌚1👾1
Создавай ИИ-приложения как профи: 17 опенсорсных инструментов

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

Читать статью
12🥰2👏1🤩1
🔑 Шифруем файлы в Android

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

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

Автор расскажет про опыт внедрения шифрования локальных файлов в приложении VK Teams, в том числе про подводные камни и неочевидные моменты, с которыми пришлось столкнуться.

👀 Смотреть доклад
#mobius #android
😁4🥰2