Самые весёлые TODO из Android-фреймворка
Иногда на проекте (особенно если он большой) некоторые TODO обречены на то, чтобы остаться в нем навеки и Android Open Source Project не исключение. Сегодня я расскажу про самые забавные тудухи из AOSP (Android Open Source Project) на которые мне приходилось натыкаться во время изучения исходников.
Статья: https://habr.com/ru/companies/alfa/articles/837880/
Платформа: Android
Иногда на проекте (особенно если он большой) некоторые TODO обречены на то, чтобы остаться в нем навеки и Android Open Source Project не исключение. Сегодня я расскажу про самые забавные тудухи из AOSP (Android Open Source Project) на которые мне приходилось натыкаться во время изучения исходников.
Статья: https://habr.com/ru/companies/alfa/articles/837880/
Платформа: Android
Видео и подкасты за неделю на @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS En) CocoaHeadsNL Meetup•
(iOS En) Google Engineer Teaches Us How to Set Up Firebase in Your iOS Project•
(iOS En) App-Wide Overlays | SwiftUI•
(iOS En) MockData, PreviewModifiers and PreviewTraits in SwiftUI•
(And Ru) Избавляемся от Context в бизнес логике — как ответить на собеседовании•
(And En) Studio Jewelry - Android Developers Backstage•
(And En) How to Migrate Your App to Support the NEW Predictive Back Gestures On Android•
(And En) How to Implement Image Compression On Android•
(And En) Practical Tips and Tricks to Improve Your Compose Previews•
(Dev Ru) Backend vs Frontend: сравниваем опыт разработчиков — что сложнее, перспективнее и кому больше платят•
(Dev Ru) Grafana: инструкция по применению•
(Dev Ru) Тесты с душком•
(Dev Ru) Как писать библиотеки: проектирование API, обратная совместимость•
(Dev En) Learn Claude AI – Build Text Summarizers, Image Describers, and More with the Anthropic API•
(Dev En) Gemma Developer Day Tokyo#ios #android #mobile #video
👍1
CoreDataEvolution - эта библиотека призвана упростить и улучшить работу Core Data с многопоточностью, черпая вдохновение из функции @ModelActor в SwiftData, обеспечивая эффективные, безопасные и масштабируемые операции.
В SwiftData появились современные функции параллелизма, такие как @ModelActor, что упростило обработку параллельного доступа к данным с гарантированной компилятором безопасностью. Однако требования SwiftData к платформе и ограниченная зрелость в некоторых областях удерживали многих разработчиков от его внедрения. CoreDataEvolution устраняет этот пробел, перенося передовой дизайн SwiftData в мир Core Data для разработчиков, которые все еще полагаются на Core Data.
CoreDataEvolution на GitHub: https://github.com/fatbobman/CoreDataEvolution
Платформа: iOS
⭐️: 26
В SwiftData появились современные функции параллелизма, такие как @ModelActor, что упростило обработку параллельного доступа к данным с гарантированной компилятором безопасностью. Однако требования SwiftData к платформе и ограниченная зрелость в некоторых областях удерживали многих разработчиков от его внедрения. CoreDataEvolution устраняет этот пробел, перенося передовой дизайн SwiftData в мир Core Data для разработчиков, которые все еще полагаются на Core Data.
CoreDataEvolution на GitHub: https://github.com/fatbobman/CoreDataEvolution
Платформа: iOS
⭐️: 26
iOS 18 для разработчиков: Ключевые изменения в UIKit
Меня зовут Лена, я работаю iOS-разработчиком в KTS. Недавно вышла новая версия iOS 18, и я решила подробно изучить все нововведения, чтобы понять, какие новые возможности она предлагает разработчикам. В этой статье расскажу и покажу самые интересные обновления в UIKit — новый TabBar, анимации, совместимость UIKit/SwiftUI и многое другое.
Статья: https://habr.com/ru/companies/kts/articles/852764/
Платформа: iOS
Меня зовут Лена, я работаю iOS-разработчиком в KTS. Недавно вышла новая версия iOS 18, и я решила подробно изучить все нововведения, чтобы понять, какие новые возможности она предлагает разработчикам. В этой статье расскажу и покажу самые интересные обновления в UIKit — новый TabBar, анимации, совместимость UIKit/SwiftUI и многое другое.
Статья: https://habr.com/ru/companies/kts/articles/852764/
Платформа: iOS
Восстанавливаем удалённые сообщения в Telegram
Очевидно, данная статья не раскрывает каких-то фундаментальных тем и является лишь описанием личного опыта по довольно специфическому вопросу. Однако мне не удалось найти публикаций, которые раскрывали бы эту тему так же подробно и конкретно. Возможно, статья может оказаться полезной в некоторых жизненных ситуациях для самого широкого круга лиц. А также будет занятной и поучительной для тех, кто слишком полагается в вопросах безопасности на инструменты мессенджеров.
Статья: https://habr.com/ru/articles/852902/
Платформа: Android
Очевидно, данная статья не раскрывает каких-то фундаментальных тем и является лишь описанием личного опыта по довольно специфическому вопросу. Однако мне не удалось найти публикаций, которые раскрывали бы эту тему так же подробно и конкретно. Возможно, статья может оказаться полезной в некоторых жизненных ситуациях для самого широкого круга лиц. А также будет занятной и поучительной для тех, кто слишком полагается в вопросах безопасности на инструменты мессенджеров.
Статья: https://habr.com/ru/articles/852902/
Платформа: Android
Правда ли, что приложения для Android намного меньше, чем для iOS?
На первый взгляд это правда! Размер, который мы видим в магазине приложений для iOS, почти всегда в разы больше размера Android-аналога в Google Play Store.
Но что, если я скажу вам, что размеры приложений для Android больше, чем может показаться на первый взгляд?
В этой статье мы расскажем, почему приложения для Android больше, чем кажется, откуда берутся размеры на обеих платформах и действительно ли приложения для iOS намного больше, чем для Android.
Статья: https://apptractor.ru/develop/pravda-li-chto-prilozheniya-dlya-android-namnogo-menshe-chem-dlya-ios.html
Платформа: iOS/Android
На первый взгляд это правда! Размер, который мы видим в магазине приложений для iOS, почти всегда в разы больше размера Android-аналога в Google Play Store.
Но что, если я скажу вам, что размеры приложений для Android больше, чем может показаться на первый взгляд?
В этой статье мы расскажем, почему приложения для Android больше, чем кажется, откуда берутся размеры на обеих платформах и действительно ли приложения для iOS намного больше, чем для Android.
Статья: https://apptractor.ru/develop/pravda-li-chto-prilozheniya-dlya-android-namnogo-menshe-chem-dlya-ios.html
Платформа: iOS/Android
👍1
Lawnchair - это бесплатный открытый лаунчер для Android. Взяв за отправную точку Launcher3 - домашнее приложение Android по умолчанию, он переносит функции Pixel Launcher и предоставляет богатые возможности для настройки.
Главные фичи:
• Pixel Launcher-подобный пользовательский интерфейс с дизайном Material You
• Виджет At a Glance с поддержкой Smartspacer
• Поддержка QuickSwitch
• Поддержка глобального поиска
• Настройка иконок, шрифтов и цветов
Lawnchair на GitHub: https://github.com/LawnchairLauncher/lawnchair
Платформа: Android
⭐️: 9.4K
Главные фичи:
• Pixel Launcher-подобный пользовательский интерфейс с дизайном Material You
• Виджет At a Glance с поддержкой Smartspacer
• Поддержка QuickSwitch
• Поддержка глобального поиска
• Настройка иконок, шрифтов и цветов
Lawnchair на GitHub: https://github.com/LawnchairLauncher/lawnchair
Платформа: Android
⭐️: 9.4K
Осваиваем ViewModel в Android: «можно» и «нельзя» — Часть 5 (4, 3 ,2, 1)
В этой статье мы рассмотрим:
8. Избегайте жесткого прописывания диспетчеров корутинов
9. Проводите модульное тестирование своих ViewModel
10. Избегайте раскрытия suspended функций
Статья: https://apptractor.ru/info/articles/osvaivaem-viewmodel-v-android-mozhno-i-nelzya-chast-5.html
Платформа: Android
В этой статье мы рассмотрим:
8. Избегайте жесткого прописывания диспетчеров корутинов
9. Проводите модульное тестирование своих ViewModel
10. Избегайте раскрытия suspended функций
Статья: https://apptractor.ru/info/articles/osvaivaem-viewmodel-v-android-mozhno-i-nelzya-chast-5.html
Платформа: Android
Реализуем Face ID аутентификацию в iOS-приложении
В этой статье мы рассмотрим процесс интеграции Face ID в приложения для iOS, чтобы повысить безопасность и удобство использования.
Статья: https://apptractor.ru/info/articles/realizuem-face-id-autentifikatsiyu-v-ios-prilozhenii.html
Платформа: iOS
В этой статье мы рассмотрим процесс интеграции Face ID в приложения для iOS, чтобы повысить безопасность и удобство использования.
Статья: https://apptractor.ru/info/articles/realizuem-face-id-autentifikatsiyu-v-ios-prilozhenii.html
Платформа: iOS
Paralayout - это набор простых, полезных и понятных утилит, которые обеспечивают пиксельно идеальную верстку в iOS. С их помощью вы просто и быстро сможете определять размеры, взаимное отношение и распределение представлений на экране.
Paralayout на GitHub: https://github.com/square/Paralayout
Платформа: iOS
⭐️: 786
Paralayout на GitHub: https://github.com/square/Paralayout
Платформа: iOS
⭐️: 786
React Native полностью переделан
После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.
Статья: https://habr.com/ru/articles/854348/
Платформа: кроссплатформенная разработка
После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.
Статья: https://habr.com/ru/articles/854348/
Платформа: кроссплатформенная разработка
Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке
В этом гайде мы напишем с вами Android-приложение с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVVM с элементами MVI, они обеспечат поддерживаемость, тестируемость и масштабируемость приложений, что особенно важно для сложных и долгосрочных проектов..
Статья: https://habr.com/ru/articles/854450/
Платформа: Android
В этом гайде мы напишем с вами Android-приложение с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVVM с элементами MVI, они обеспечат поддерживаемость, тестируемость и масштабируемость приложений, что особенно важно для сложных и долгосрочных проектов..
Статья: https://habr.com/ru/articles/854450/
Платформа: Android
Поиск регрессий в Compose
В этой статье мы создадим приложение, добавим регрессии и сравним версию до и после с помощью Perfetto и Diffetto.
Статья: https://apptractor.ru/info/articles/poisk-regressiy-v-compose.html
Платформа: Android
В этой статье мы создадим приложение, добавим регрессии и сравним версию до и после с помощью Perfetto и Diffetto.
Статья: https://apptractor.ru/info/articles/poisk-regressiy-v-compose.html
Платформа: Android
Compose Unstyled - нестандартные компоненты для Jetpack Compose и Compose Multiplatform, которые вы можете настроить по своему усмотрению. Есть Bottom Sheet, диалоги, выпадающие меню, иконки, облапсть со скроллингом, меню с кнопками. Реализована полная доступность, работают на декстопах, Web (Js/WASM), Android, iOS и любой другой платформы, на которой может работать Compose.
Compose Unstyled на GitHub: https://github.com/composablehorizons/compose-unstyled
Платформа: Android/кроссплатформа
⭐️: 362
Compose Unstyled на GitHub: https://github.com/composablehorizons/compose-unstyled
Платформа: Android/кроссплатформа
⭐️: 362
Делаем в SwiftUI размытие экрана при переключении задачи
Повышение конфиденциальности пользователей имеет решающее значение при разработке приложений. В этом руководстве рассказывается о том, как создать приложение SwiftUI, которое автоматически размывает экран, когда переходит в многозадачный или фоновый режим, - полезная функция защиты конфиденциального контента.
Статья: https://apptractor.ru/info/articles/delaem-v-swiftui-razmytie-ekrana-pri-pereklyuchenii-zadachi.html
Платформа: iOS
Повышение конфиденциальности пользователей имеет решающее значение при разработке приложений. В этом руководстве рассказывается о том, как создать приложение SwiftUI, которое автоматически размывает экран, когда переходит в многозадачный или фоновый режим, - полезная функция защиты конфиденциального контента.
Статья: https://apptractor.ru/info/articles/delaem-v-swiftui-razmytie-ekrana-pri-pereklyuchenii-zadachi.html
Платформа: iOS
Главный метод Android-приложения
Я Саша, старший Android-разработчик в Авито, ранее работал в Яндексе и Kaspersky. Пишу о разработке и всём, что с ней связано, в своем телеграм-канале. Сейчас поговорим немного про главный метод и про процесс Android-приложения.
Если вы когда-нибудь писали «Hello World» на Java (или любом другом C-подобном языке), то наверняка делали это в статическом методе main. Этот метод вызывается в JVM и является точкой входа любой Java программы.
Но при разработке приложений для Android вы возможно, как и я до недавнего времени, ни разу метод main не встречали. Создается ощущение, что его вообще не существует, а при нажатии на иконку в лаунчере наши Application и Activity создаются какими-то волшебными гномами, спрятанными в устройстве.
Статья: https://habr.com/ru/articles/854726/
Платформа: Android
Я Саша, старший Android-разработчик в Авито, ранее работал в Яндексе и Kaspersky. Пишу о разработке и всём, что с ней связано, в своем телеграм-канале. Сейчас поговорим немного про главный метод и про процесс Android-приложения.
Если вы когда-нибудь писали «Hello World» на Java (или любом другом C-подобном языке), то наверняка делали это в статическом методе main. Этот метод вызывается в JVM и является точкой входа любой Java программы.
public static void main(String[] args)
Но при разработке приложений для Android вы возможно, как и я до недавнего времени, ни разу метод main не встречали. Создается ощущение, что его вообще не существует, а при нажатии на иконку в лаунчере наши Application и Activity создаются какими-то волшебными гномами, спрятанными в устройстве.
Статья: https://habr.com/ru/articles/854726/
Платформа: Android
Geometrize - библиотека Swift для воссоздания изображений в виде геометрических примитивов.
Geometrize на GitHub: https://github.com/valeriyvan/swift-geometrize
Платформа: iOS
⭐️: 17
Geometrize на GitHub: https://github.com/valeriyvan/swift-geometrize
Платформа: iOS
⭐️: 17
Лучшие клавиатуры 2024
Здесь есть компактные беспроводные клавиатуры, предназначенные для использования дома, механические клавиатуры, которые подходят для продуктивной работы и игр, и полностью игровые клавиатуры с RGB-подсветкой и высокопроизводительными переключателями, которые дадут вам преимущество перед конкурентами.
Статья: https://devnotebooks.ru/best-keyboard-2024/
Платформа: устройства
Здесь есть компактные беспроводные клавиатуры, предназначенные для использования дома, механические клавиатуры, которые подходят для продуктивной работы и игр, и полностью игровые клавиатуры с RGB-подсветкой и высокопроизводительными переключателями, которые дадут вам преимущество перед конкурентами.
Статья: https://devnotebooks.ru/best-keyboard-2024/
Платформа: устройства
Видео и подкасты за неделю на @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS Ru) Как устроена библиотека AppMetrica•
(iOS Ru) Здесь куют Metal•
(iOS Ru) Как iOS-разработчику выжить на проекте с KMP?•
(iOS En) Convert a SwiftUI view to an image•
(iOS En) Translation API•
(iOS En) Accessibility - The clock is ticking•
(iOS En) SwiftUI Bottom Sheet like Apple Music App•
(And Ru) Android cookbook: готовим WebView правильно•
(And Ru) Kotlin Coroutines. Устройство и возможности использования•
(And Ru) Фреш на полке, фреш в стеке•
(And En) More frequent Android SDK releases, and a look into updates on Android•
(And En) Navigation In Multi-Module Android Apps•
(And En) The Ultimate Beginner's Roadmap to Android App Architecture•
(And En) Dangerous Minds: How we're getting developer education wrong•
(Dev Ru) От натива до SDUI через гибрид•
(Dev Ru) Карьера мобильного разработчика 2024•
(Dev Ru) Разработка в робототехнике — Автоматизация, Автопилоты•
(Dev En) Google Cloud Digital Leader Certification Course 2024#ios #android #mobile #video
Задачи с собеседований: Leetcode — Наибольший общий префикс
Напишите функцию для поиска самой длинной строки с общим префиксом среди массива строк.
Если общего префикса нет, верните пустую строку.
Пример:
Ввод:
Вывод:
Пример:
Вход:
Выходные данные:
Пояснения: среди входных строк нет общего префикса.
Статья: https://apptractor.ru/develop/coding/zadachi-s-sobesedovaniy-leetcode-naibolshiy-obschiy-prefiks.html
Платформа: программирование
Напишите функцию для поиска самой длинной строки с общим префиксом среди массива строк.
Если общего префикса нет, верните пустую строку.
Пример:
Ввод:
strs = [«flower»,»flow»,»flight»]Вывод:
«fl»Пример:
Вход:
strs = [«dog»,»racecar»,»car»]Выходные данные:
«»Пояснения: среди входных строк нет общего префикса.
Статья: https://apptractor.ru/develop/coding/zadachi-s-sobesedovaniy-leetcode-naibolshiy-obschiy-prefiks.html
Платформа: программирование
👍3
FilmSimulator - это кроссплатформенное мобильное приложение, разработанное с использованием Kotlin Multiplatform и Compose UI Multiplatform. Оно работает на Android и iOS и позволяет пользователям применять различные LUT (Look-Up Tables) к своим изображениям, создавая уникальную эстетику, напоминающую классические стили кино. Технологический стек: MVVM, Compose UI, Material3, Compose Resources, FFMPEG-Kit, SQLDelight, Ktor, Voyager Navigation, Koin DI, Peekaboo Image Picker, Okio и т.д.
FilmSimulator на GitHub: https://github.com/YahiaAngelo/Film-Simulator
Платформа: Android/кроссплатформа
⭐️: 28
FilmSimulator на GitHub: https://github.com/YahiaAngelo/Film-Simulator
Платформа: Android/кроссплатформа
⭐️: 28
❤1