Google не будет разделять свой бизнес, но федеральный судья предварительно распорядился о внесении других изменений в деловую практику технологического гиганта. Например, Google не сможет обуславливать лицензирование Play Store распространением определенных приложений или увязывать выплаты в виде доли от дохода с сохранением определенных приложений. Google также будет обязан предоставлять определенные данные о поисковом индексе и взаимодействии пользователей «квалифицированным конкурентам» для предотвращения исключающего поведения, а также предлагать конкурентам услуги поиска и синдикации поисковой рекламы по стандартным тарифам, чтобы они могли обеспечивать качественные результаты, одновременно развивая собственные технологии. Пока это, правда, ни о чем не говорит - еще будет апелляция и Верховный суд. Так что все станет понятно ориентировочно только в 2028.
Разработка
• Google избежал разделения, но вынужден отказаться от эксклюзивных сделок
• How Coding Can Improve Design
• The One Architecture Decision That Destroyed Every Project I Touched
• Writing Code Was Never The Bottleneck
Маркетинг
• В Директе стало доступно продвижение мобильных приложений из RuStore
• Увеличил пробный период → но начал просить карту
Кроссплатформа
• Как мы добились оценки приложения в 5 звезд за 2 часа
• FlutterBox - Open Source Flutter Widget Library Platform
Разработка
• Google избежал разделения, но вынужден отказаться от эксклюзивных сделок
• How Coding Can Improve Design
• The One Architecture Decision That Destroyed Every Project I Touched
• Writing Code Was Never The Bottleneck
Маркетинг
• В Директе стало доступно продвижение мобильных приложений из RuStore
• Увеличил пробный период → но начал просить карту
Кроссплатформа
• Как мы добились оценки приложения в 5 звезд за 2 часа
• FlutterBox - Open Source Flutter Widget Library Platform
AppTractor
Google избежал разделения, но вынужден отказаться от эксклюзивных сделок
Несмотря на то, что Мехта представил свои долгожданные меры, «этой пьесе ещё предстоит многое сделать» в виде апелляции Google и возможной эскалации в Верховный суд.
👍3❤1
Forwarded from AppGrowth - инди, пет, рост и монетизация
Дух элитного дизайна
"В компьютерных науках есть только две сложные проблемы – инвалидация кэша и именование переменных". Добавлю третью - выбор цветов для приложения. Так что может быть пригодится для следующего проект - "9 роскошных цветовых палитр, воплощающих дух элитного дизайна". На картинке, например, полуночная роскошь.
"В компьютерных науках есть только две сложные проблемы – инвалидация кэша и именование переменных". Добавлю третью - выбор цветов для приложения. Так что может быть пригодится для следующего проект - "9 роскошных цветовых палитр, воплощающих дух элитного дизайна". На картинке, например, полуночная роскошь.
👍11💅3❤1
iOS
Отладка всегда будет частью разработки. Но есть огромная разница между блужданием в темноте с
• ARC в Swift
• Жизненный цикл UIViewController в 2025 году: что изменилось и что устарело
• Why TCA Is Making a Comeback in 2025 (And Why Enterprises Love It)
• SwiftUI: AVAudioEngine With Swift Concurrency
• I Spent 5 Years Debugging Swift Apps Wrong — Here’s What I Wish I Knew Day One
Отладка всегда будет частью разработки. Но есть огромная разница между блужданием в темноте с
print() и системным подходом с правильными инструментами. Начните использовать их сегодня, и ваше будущее "я" скажет вам спасибо, когда вы будете отлаживать сложные проблемы в продакшене с тысячами пользователей.• ARC в Swift
• Жизненный цикл UIViewController в 2025 году: что изменилось и что устарело
• Why TCA Is Making a Comeback in 2025 (And Why Enterprises Love It)
• SwiftUI: AVAudioEngine With Swift Concurrency
• I Spent 5 Years Debugging Swift Apps Wrong — Here’s What I Wish I Knew Day One
Medium
I Spent 5 Years Debugging Swift Apps Wrong — Here’s What I Wish I Knew Day One
The hidden debugging features in Xcode and Swift that will 10x your development speed
👍2
Android
• Flow-контейнеры в Compose
• Больше Pixel получат Material 3 Expressive
• Neumorphic Compose UI Kit — неоморфизм для Jetpack Compose
• Мой путь новичка в разработке: FreeSpace — мобильное приложение для любителей космоса
• Stop Re-fetching Data: Master LRU Caching in Your Android App
• Mastering Kotlin Collections: A Developer’s Journey from Confusion to Clarity
FlowRow и FlowColumn — это composables, похожие на Row и Column, но с одним ключевым отличием: элементы автоматически переносятся на следующую строку, когда в контейнере заканчивается место. Такое поведение создает несколько строк или столбцов, позволяя создавать более адаптивные интерфейсы, в которых контент не обрезается, если элементы слишком велики для одного измерения. Они особенно полезны для создания таких элементов интерфейса, как набор «чипов» или фильтров, где элементы должны переноситься на следующую строку по мере уменьшения пространства на экране. В этой статье мы подробно рассмотрим возможности flow-контейнеров, узнаем, как управлять расположением элементов, выравнивать их по отдельности и использовать «веса» (weights) для создания адаптивных сеточных структур.• Flow-контейнеры в Compose
• Больше Pixel получат Material 3 Expressive
• Neumorphic Compose UI Kit — неоморфизм для Jetpack Compose
• Мой путь новичка в разработке: FreeSpace — мобильное приложение для любителей космоса
• Stop Re-fetching Data: Master LRU Caching in Your Android App
• Mastering Kotlin Collections: A Developer’s Journey from Confusion to Clarity
AppTractor
Flow-контейнеры в Compose
Понимая и используя эти функции, вы сможете создавать более адаптивные и визуально привлекательные пользовательские интерфейсы в Jetpack Compose.
👍3
Исследования METR показало, что ИИ на самом деле замедлял разработчиков на 19%, хотя им казалось, что они работают на 20% быстрее. После этого автор провел собственный шестинедельный эксперимент и выяснил, что ИИ замедляет его в среднем на 21%, подтверждая результаты исследования. Он пришел к выводу, что заявления о многократном увеличении производительности не соответствуют действительности. Ключевой аргумент автора заключается в вопросе: если ИИ-инструменты настолько эффективны, то где же «поток низкокачественного программного обеспечения»? Он предоставляет данные, свидетельствующие о том, что количество новых программных релизов — веб-сайтов, игр, мобильных приложений — осталось на прежнем уровне, без ожидаемого экспоненциального роста после массового внедрения ИИ в 2022–2023 годах. Автор критикует IT-индустрию за увлечение этой идеей, которое приводит к увольнениям и снижению зарплат. Он призывает других разработчиков доверять своему опыту и скептически относиться к заявлениям о «10x-программистах», поскольку данные о реальном выпуске ПО их не подтверждают.
Разработка
• Where's the Shovelware? Why AI Coding Claims Don't Add Up
Маркетинг
• Япония с ИИ
• ChatGPT станет новой ключевой платформой дистрибуции и роста. Или нет?
• The ultimate guide to price localization
Кроссплатформа
• Как сделать GitLab CI/CD вашим лучшим другом для сборки и доставки Flutter приложений. Часть 2
• Cross-Platform CI/CD: TUUCHO’s KMM Jenkins Pipeline with iOS, Android, and Visual Regression QA
• My flutter app size just doubled after flutter upgrade
• I finally understood Flutter layout
Разработка
• Where's the Shovelware? Why AI Coding Claims Don't Add Up
Маркетинг
• Япония с ИИ
• ChatGPT станет новой ключевой платформой дистрибуции и роста. Или нет?
• The ultimate guide to price localization
Кроссплатформа
• Как сделать GitLab CI/CD вашим лучшим другом для сборки и доставки Flutter приложений. Часть 2
• Cross-Platform CI/CD: TUUCHO’s KMM Jenkins Pipeline with iOS, Android, and Visual Regression QA
• My flutter app size just doubled after flutter upgrade
• I finally understood Flutter layout
Substack
Where's the Shovelware? Why AI Coding Claims Don't Add Up
78% of developers claim AI makes them more productive. 14% say it's a 10x improvement. So where's the flood of new software? Turns out those productivity claims are bullshit.
👍5🤡2❤1🤔1
Forwarded from AppFiles - Mobile Development
•
(iOS En) iOS 26 Lock Screen Carousel With Reflection Effect Using SwiftUI•
(iOS En) How to hide the content of a view in a screenshot (iOS tutorial)•
(iOS En) Swift concurrency for curious Kotliners•
(iOS En) SwiftUI: How To Seamlessly Morph Liquid Glass Shapes•
(iOS En) Auto Resizing Dynamic Sheets Using SwiftUI•
(iOS En) Mastering Liquid Glass in SwiftUI – Buttons, Containers & Transitions•
(And Ru) Облегчаем жизнь больших экранов на Compose•
(And Ru) Разбор MAX программистом•
(And Ru) ProGuard — Стандарт Мобильной Безопастности?•
(And Ru) Ты готов к собеседованию в Альфа-Банк? Интервью мобильного разработчика•
(And En) TheAndroidShow: The latest for devs from Made by Google, Gemini in Android Studio, a new Androidify•
(And En) What's new in Android Studio Narwhal 3 Feature Drop•
(And En) Androidify app deep dive•
(And En) Bring your most expressive apps to the wrist: Wear OS 6 and the new Pixel Watch 4•
(And En) Connect Model Context Protocol (MCP) servers to Android Studio to improve AI agent capabilities•
(And En) Now in Android: 121 – Android Studio Narwhal, Android 16 QPR2 beta, and more•
(And En) Build your Kotlin and Android apps with Buck2•
(And En) Exposed inline value classes for Java in Kotlin 2.2•
(And En) Kotlin Worst Practices — How to Maximize Your Hassle•
(And En) Putting Kotlin Flows Together•
(And En) Develocity Analytics: Get end-to-end visibility into your build process•
(Crs En) Blueprints for Scale: What AWS Learned Building a Massive Multiplatform Project•
(Crs En) Lessons learned decoupling Architecture Components from platform specific code•
(Dev Ru) Лучший билд команды и проекта в IT•
(Dev Ru) DevRel в мобильной разработке: между платформами, комьюнити и командой•
(Dev Ru) Числа в программировании — Почему компьютер не понимает 0.1 + 0.2•
(Dev En) How You Use an AI Coding Agent the RIGHT Way For Mobile Development•
(Dev En) Introducing EmbeddingGemma: The Best-in-Class Open Model for On-Device EmbeddingsПрошлогодние видео:
•
(And Ru) Организация кода в проекте — в какой пакет положить Kotlin класс•
(Dev Ru) Архитектурное собеседование — по обе стороны баррикад (+ все собеседования)•
(Dev Ru) Backend-Driven UI и конструкторы. Благо или зло?•
(Dev Ru) Открытое собеседование — технический руководитель: разбор кейсаPlease open Telegram to view this post
VIEW IN TELEGRAM
👍1
Стеклянный контейнер
Все статьи, новости и видео за неделю - «стеклянный мир» iOS 26 и Flow-контейнеры в Compose, Android Glance Widget и жизненный цикл UIViewController 2025, лучшие практики агентного программирования, как замедлить программу и почему это может быть полезно, приложения, вышедшие в июле, и заработавшие больше $50,000, и многое другое. Заходите!
Все статьи, новости и видео за неделю - «стеклянный мир» iOS 26 и Flow-контейнеры в Compose, Android Glance Widget и жизненный цикл UIViewController 2025, лучшие практики агентного программирования, как замедлить программу и почему это может быть полезно, приложения, вышедшие в июле, и заработавшие больше $50,000, и многое другое. Заходите!
👍4
📱System Design всё чаще становится частью повестки мобильной разработки.
Сегодня недостаточно просто уметь строить экраны: от Android-разработчиков ждут архитектурного взгляда: как проектировать SDK, интегрировать KMP, выстраивать эксперименты и переосмысливать подходы.
Podlodka Android Crew — онлайн-конференция, в новом сезоне которой обсудят архитектурные решения, способные выдерживать рост, сложность и нагрузку.
📌 В программе:
— как использовать Ktor на Android и зачем вам знать про его Pipeline и Plugins (JetBrains)
— что отличает удобный SDK от токсичного и как проектировать «гостеприимные» библиотеки (RuStore)
— история масштабной миграции с TEA и архитектурные выводы по итогам (Auto ru)
— функциональное программирование в Android: приёмы, нюансы производительности и тестирование (Dodo Engineering)
🗓Конференция пройдёт 15–19 сентября
🔗Билеты — https://podlodka.io/droidcrew
Сегодня недостаточно просто уметь строить экраны: от Android-разработчиков ждут архитектурного взгляда: как проектировать SDK, интегрировать KMP, выстраивать эксперименты и переосмысливать подходы.
Podlodka Android Crew — онлайн-конференция, в новом сезоне которой обсудят архитектурные решения, способные выдерживать рост, сложность и нагрузку.
📌 В программе:
— как использовать Ktor на Android и зачем вам знать про его Pipeline и Plugins (JetBrains)
— что отличает удобный SDK от токсичного и как проектировать «гостеприимные» библиотеки (RuStore)
— история масштабной миграции с TEA и архитектурные выводы по итогам (Auto ru)
— функциональное программирование в Android: приёмы, нюансы производительности и тестирование (Dodo Engineering)
🗓Конференция пройдёт 15–19 сентября
🔗Билеты — https://podlodka.io/droidcrew
🍌2👍1
iOS
Первые пять лет своей карьеры в iOS-разработке я был тем разработчиком, который разбрасывал повсюду операторы
• Как правильно отлаживать iOS-приложения
• AwaitlessKit — синхронные обёртки для async функций
• The Cupertino Ghost in the Machine: An Analysis of Xcode's New AI Assistant
• @ViewBuilder usage explained with code examples
• Creating Light and Dark Mode Icons using Icon Composer
• Turning CI Logs into Actions
• 7 Swift String Interpolation Tricks That Will Make You a Better Developer
• 10 SwiftUI Hacks For Cleaner Apps, Less Code Same Power
Первые пять лет своей карьеры в iOS-разработке я был тем разработчиком, который разбрасывал повсюду операторы
print(), словно конфетти на новогодней вечеринке. Нужно проверить переменную? print(myVariable). Приложение падает? print("Made it here!"). Сложная структура данных ведёт себя странно? print("Debug: \(someComplexObject)"). И знаете что? Это работало. Вроде как. Пока не перестало. Пробуждение пришло во время особенно изнурительного сеанса отладки, когда в моей кодовой базе было разбросано более 47 операторов print (да, я считал). Консоль выглядела как цифровая лавина, и я тратил больше времени на прокрутку отладочной информации, чем на исправление ошибок.• Как правильно отлаживать iOS-приложения
• AwaitlessKit — синхронные обёртки для async функций
• The Cupertino Ghost in the Machine: An Analysis of Xcode's New AI Assistant
• @ViewBuilder usage explained with code examples
• Creating Light and Dark Mode Icons using Icon Composer
• Turning CI Logs into Actions
• 7 Swift String Interpolation Tricks That Will Make You a Better Developer
• 10 SwiftUI Hacks For Cleaner Apps, Less Code Same Power
AppTractor
Как правильно отлаживать iOS-приложения
Приёмы, которыми я здесь поделился, не только помогают быстрее находить ошибки — они помогают лучше понимать код, создавать более надёжные приложения и, честно говоря, получать больше удовольствия от процесса разработки.
❤3
Android
В современных медиа-ориентированных приложениях обеспечение плавного и бесперебойного воспроизведения является ключом к хорошему пользовательскому опыту. Пользователи ожидают, что их видео запустится мгновенно и будет воспроизводиться без задержек. Основная проблема — задержка. Традиционно видеоплеер начинает работу — подключается, загружает, анализирует и буферизует — только после того, как пользователь выбрал элемент для воспроизведения. Такой реактивный подход медленный для современных коротких видео. Решение — действовать проактивно. Нам необходимо предвидеть, что пользователь будет смотреть дальше, и подготовить контент заранее. В этом и заключается суть предварительной загрузки. В этой серии статей из трёх частей, Google подробно рассмотрит мощные инструменты Media3 для (пред)загрузки компонентов.
• Reveal — эффект подсветки (обучающие подсказки) для Compose Multiplatform
• Облегчаем жизнь больших экранов на Compose
• Разбор MAX программистом
• ProGuard — Стандарт Мобильной Безопастности?
• Ты готов к собеседованию в Альфа-Банк? Интервью мобильного разработчика
• Mastering Conditional Layouts in Jetpack Compose: The Flexible Way
• runBlocking in practice: Where it should be used and where not
• Inside Burst’s Test Interceptors
• The Hidden Dangers of Jetpack Compose State (And How to Fix Them With Real Examples)
• Elevating media playback: Introducing preloading with Media3
• Google Just Gave Android Developers Superpowers — Here’s How I’m Using Them
В современных медиа-ориентированных приложениях обеспечение плавного и бесперебойного воспроизведения является ключом к хорошему пользовательскому опыту. Пользователи ожидают, что их видео запустится мгновенно и будет воспроизводиться без задержек. Основная проблема — задержка. Традиционно видеоплеер начинает работу — подключается, загружает, анализирует и буферизует — только после того, как пользователь выбрал элемент для воспроизведения. Такой реактивный подход медленный для современных коротких видео. Решение — действовать проактивно. Нам необходимо предвидеть, что пользователь будет смотреть дальше, и подготовить контент заранее. В этом и заключается суть предварительной загрузки. В этой серии статей из трёх частей, Google подробно рассмотрит мощные инструменты Media3 для (пред)загрузки компонентов.
• Reveal — эффект подсветки (обучающие подсказки) для Compose Multiplatform
• Облегчаем жизнь больших экранов на Compose
• Разбор MAX программистом
• ProGuard — Стандарт Мобильной Безопастности?
• Ты готов к собеседованию в Альфа-Банк? Интервью мобильного разработчика
• Mastering Conditional Layouts in Jetpack Compose: The Flexible Way
• runBlocking in practice: Where it should be used and where not
• Inside Burst’s Test Interceptors
• The Hidden Dangers of Jetpack Compose State (And How to Fix Them With Real Examples)
• Elevating media playback: Introducing preloading with Media3
• Google Just Gave Android Developers Superpowers — Here’s How I’m Using Them
Android Developers Blog
Elevating media playback: Introducing preloading with Media3 - Part 1
Media3 preloading APIs offer faster, smoother video playback. Use 'PreloadConfiguration' for playlists or 'DefaultPreloadManager' for dynamic feeds.
👍3
Компания OpenAI заявила, что разрабатывает платформу найма на базе искусственного интеллекта, которая позволит компаниям и сотрудникам найти общий язык. Этот сервис может составить серьёзную конкуренцию LinkedIn. Продукт называется OpenAI Jobs Platform, и компания планирует запустить его к середине 2026 года. Миссия - "использовать ИИ, чтобы найти идеальное соответствие между потребностями компаний и тем, что могут предложить работники". OpenAI также заявляет, что начнет предлагать сертификацию для людей с разным уровнем владения ИИ через свою OpenAI Academy, онлайн-программу, которую компания запустила в прошлом году. Представитель OpenAI сообщил, что компания планирует запустить пилотную программу сертификации OpenAI в конце 2025 года.
Разработка
• OpenAI анонсирует платформу найма на базе искусственного интеллекта
• Лучший билд команды и проекта в IT
• DevRel в мобильной разработке: между платформами, комьюнити и командой
• Числа в программировании — Почему компьютер не понимает 0.1 + 0.2
• Как упростить разработку: опыт и размышления (компиляция из моей переписки)
Маркетинг
• Как выбрать ПРАВИЛЬНОЕ приложение для инди-разработки
• Важные изменения ASO в 2025 году
Кроссплатформа
• Pragmatic KMP for Mobile at Somnox
• Is it time for Flutter to leave the uncanny valley?
Разработка
• OpenAI анонсирует платформу найма на базе искусственного интеллекта
• Лучший билд команды и проекта в IT
• DevRel в мобильной разработке: между платформами, комьюнити и командой
• Числа в программировании — Почему компьютер не понимает 0.1 + 0.2
• Как упростить разработку: опыт и размышления (компиляция из моей переписки)
Маркетинг
• Как выбрать ПРАВИЛЬНОЕ приложение для инди-разработки
• Важные изменения ASO в 2025 году
Кроссплатформа
• Pragmatic KMP for Mobile at Somnox
• Is it time for Flutter to leave the uncanny valley?
AppTractor
OpenAI анонсирует платформу найма на базе искусственного интеллекта
OpenAI заинтересован в выходе на несколько новых рынков за пределами своего основного потребительского продукта ChatGPT.
❤6👍6
Forwarded from AppGrowth - инди, пет, рост и монетизация
Теплота и элегантность
Мужчины, как известно, различают 16 цветов, но так как пост про элитные палитры зашел на ура - вот 9 мягких коралловых палитр.
💅 если хочешь больше дизайна!
AppGrowth про инди
Мужчины, как известно, различают 16 цветов, но так как пост про элитные палитры зашел на ура - вот 9 мягких коралловых палитр.
Магия кораллового цвета кроется в его идеальном балансе: яркий и изысканный, тёплый и утонченный. Этот универсальный оттенок украсит всё: от фирменного стиля до интерьера благодаря своей вневременной привлекательности. Представляем 9 тщательно подобранных коралловых палитр, которые привнесут необходимую теплоту и элегантность в ваш следующий творческий проект.
💅 если хочешь больше дизайна!
AppGrowth про инди
💅19
iOS
SwiftUI — мощный инструмент, да, но иногда он заставляет писать всё снова и снова: настраивать модификаторы, обрабатывать ошибки, управлять опциональными параметрами, форматировать даты. В чём секрет? Вам не нужно мириться с повторениями. С помощью нескольких умных расширений и шаблонов вы можете сделать код SwiftUI чище, короче и при этом таким же мощным.
• 10 SwiftUI-хаков для более чистых приложений
• Voyager — фреймворк для навигации и маршрутизации в SwiftUI
• Swift 6.2 : Game-Changing Features
• SwiftUI Toggle: A Complete Guide
• Swift: Speech-To-Text With SpeechAnalyzer
• 21 SwiftUI Interview Questions Every iOS Developer Should Master (With Code Examples)
• The Hunt for Our #1 iOS Crash
SwiftUI — мощный инструмент, да, но иногда он заставляет писать всё снова и снова: настраивать модификаторы, обрабатывать ошибки, управлять опциональными параметрами, форматировать даты. В чём секрет? Вам не нужно мириться с повторениями. С помощью нескольких умных расширений и шаблонов вы можете сделать код SwiftUI чище, короче и при этом таким же мощным.
• 10 SwiftUI-хаков для более чистых приложений
• Voyager — фреймворк для навигации и маршрутизации в SwiftUI
• Swift 6.2 : Game-Changing Features
• SwiftUI Toggle: A Complete Guide
• Swift: Speech-To-Text With SpeechAnalyzer
• 21 SwiftUI Interview Questions Every iOS Developer Should Master (With Code Examples)
• The Hunt for Our #1 iOS Crash
AppTractor
10 SwiftUI-хаков для более чистых приложений
Меньше кода. Та же мощь. Больше удовольствия. Вот как должен выглядеть SwiftUI.
❤1👍1
Android
Для Android-разработчиков, использующих нативные библиотеки, появилось новое требование Google Play: обеспечить поддержку 16-килобайтных страниц памяти для приложений, нацеленных на Android 15. Ручная проверка и обновление каждой .so библиотеки может стать сложной задачей. Чтобы упростить этот процесс, был представлен новый Gradle-плагин с открытым исходным кодом — Skyhigh16KB, созданный специально для автоматизации перехода на новый стандарт. Плагин значительно экономит время, выполняя всю рутинную работу по проверке. Он сканирует проект в поиске всех .so файлов, определяет, к какой именно библиотеке относится каждый из них, и проверяет их на совместимость с 16-КБ страницами. В результате разработчик получает четкое представление о том, какие зависимости требуют обновления, что позволяет вносить изменения точечно. Автор плагина отмечает, что это ранняя версия и приветствует обратную связь от сообщества для дальнейшего улучшения инструмента.
• MAX без оболочки: Что мы нашли в его APK
• Android Micro Frontend Interview Guide: 20+ Questions That Will Land You the Job
• Improve app performance with optimized resource shrinking
• Investigating IntelliJ Platform UI Freezes
• A Gradle Plugin to Help You Add 16KB Page Support in Google Play Easily
Для Android-разработчиков, использующих нативные библиотеки, появилось новое требование Google Play: обеспечить поддержку 16-килобайтных страниц памяти для приложений, нацеленных на Android 15. Ручная проверка и обновление каждой .so библиотеки может стать сложной задачей. Чтобы упростить этот процесс, был представлен новый Gradle-плагин с открытым исходным кодом — Skyhigh16KB, созданный специально для автоматизации перехода на новый стандарт. Плагин значительно экономит время, выполняя всю рутинную работу по проверке. Он сканирует проект в поиске всех .so файлов, определяет, к какой именно библиотеке относится каждый из них, и проверяет их на совместимость с 16-КБ страницами. В результате разработчик получает четкое представление о том, какие зависимости требуют обновления, что позволяет вносить изменения точечно. Автор плагина отмечает, что это ранняя версия и приветствует обратную связь от сообщества для дальнейшего улучшения инструмента.
• MAX без оболочки: Что мы нашли в его APK
• Android Micro Frontend Interview Guide: 20+ Questions That Will Land You the Job
• Improve app performance with optimized resource shrinking
• Investigating IntelliJ Platform UI Freezes
• A Gradle Plugin to Help You Add 16KB Page Support in Google Play Easily
Reddit
From the androiddev community on Reddit: A Gradle Plugin to Help You Add 16KB Page Support in Google Play Easily 🚀
Explore this post and more from the androiddev community
👍6
Разработка
• Snap переходит на «стартап-команды» из-за снижения доходов от рекламы
• 12 месяцев, 8 приложений, 0 долларов: трудные уроки инди-хакинга
• Writing Code Is Easy. Reading It Isn’t.
• How can I deal with a team member who is always complaining?
• How to Get Rich as a Solo Software Developer
Маркетинг
• Как создать вирусное приложение: от 0 до $100K в месяц
• Делай деньги: как сегодня зарабатывают на приложениях и что в тренде монетизации
• Koah привлек $5 млн для размещения рекламы в ИИ-приложениях
Кроссплатформа
• Натив, Flutter или KMP — выбираем мобильный фреймворк для e-commerce
• The Package That Kills Flutter Apps
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Новая оптимизация ресурсов в приложениях от Google
С выпуском версии 8.12.0 Android Gradle Plugin (AGP) в компании представили оптимизированное сокращение ресурсов — ещё более эффективный способ уменьшения размера вашего приложения с помощью R8. Используя его, вы можете уменьшить размер своего приложения, что означает меньший размер приложения, более быструю установку и меньший объём используемой памяти на устройствах ваших пользователей. Результат — более быстрый запуск, улучшенный рендеринг и меньшее количество ANR-ошибок.
Прежний подход был менее эффективным, потому что оптимизация кода и ресурсов происходила раздельно. Сначала инструмент AAPT2 создавал строгие правила, которые заставляли оптимизатор R8 сохранять код, если на него ссылались ресурсы. Проблема в том, что эти правила были безусловными. Даже если код был частью неиспользуемой функции, R8 всё равно не мог его удалить. Это вызывало цепную реакцию: в приложении оставался ненужный код, который, в свою очередь, заставлял R8 сохранять и ненужные ресурсы, связанные с этим кодом.
Новый подход улучшает сокращение ресурсов за счёт полной интеграции с существующим конвейером оптимизации кода. В новом подходе R8 одновременно оптимизирует как код, так и ссылки на ресурсы, гарантируя, что все ресурсы, на которые ссылается исключительно неиспользуемый код, идентифицируются как неиспользуемые и затем удаляются. Это полностью устраняет необходимость в безусловных правилах сохранения (unconditional keep rules), генерируемых AAPT2, и предоставляет гораздо более детальную и точную информацию для удаления неиспользуемого кода и ресурсов.
Для приложений, использующих значительные ресурсы и код в разных форм-факторах, зафиксировали улучшение размера более чем на 50%. Улучшения наблюдаются и в небольших приложениях.
С выпуском версии 8.12.0 Android Gradle Plugin (AGP) в компании представили оптимизированное сокращение ресурсов — ещё более эффективный способ уменьшения размера вашего приложения с помощью R8. Используя его, вы можете уменьшить размер своего приложения, что означает меньший размер приложения, более быструю установку и меньший объём используемой памяти на устройствах ваших пользователей. Результат — более быстрый запуск, улучшенный рендеринг и меньшее количество ANR-ошибок.
Прежний подход был менее эффективным, потому что оптимизация кода и ресурсов происходила раздельно. Сначала инструмент AAPT2 создавал строгие правила, которые заставляли оптимизатор R8 сохранять код, если на него ссылались ресурсы. Проблема в том, что эти правила были безусловными. Даже если код был частью неиспользуемой функции, R8 всё равно не мог его удалить. Это вызывало цепную реакцию: в приложении оставался ненужный код, который, в свою очередь, заставлял R8 сохранять и ненужные ресурсы, связанные с этим кодом.
Новый подход улучшает сокращение ресурсов за счёт полной интеграции с существующим конвейером оптимизации кода. В новом подходе R8 одновременно оптимизирует как код, так и ссылки на ресурсы, гарантируя, что все ресурсы, на которые ссылается исключительно неиспользуемый код, идентифицируются как неиспользуемые и затем удаляются. Это полностью устраняет необходимость в безусловных правилах сохранения (unconditional keep rules), генерируемых AAPT2, и предоставляет гораздо более детальную и точную информацию для удаления неиспользуемого кода и ресурсов.
Для приложений, использующих значительные ресурсы и код в разных форм-факторах, зафиксировали улучшение размера более чем на 50%. Улучшения наблюдаются и в небольших приложениях.
👍9
iOS
iOS 26, iPadOS 26, macOS Tahoe 26, tvOS 26, visionOS 26 и watchOS 26 скоро станут доступны клиентам по всему миру, а это значит, что теперь вы можете отправлять приложения и игры, использующие самое масштабное обновление дизайна от Apple. Вышел Xcode 26 Release Candidate (правда, качается очень плохо) и теперь с его помощью можно заливать версии приложений под новые ОС. С апреля 2026 года приложения и игры, загружаемые в App Store Connect, должны быть созданы с использованием iOS 26 и iPadOS 26 SDK или более поздней версии.
• В App Store открыт прием приложений для новейшие версии ОС
• Why Your Swift App is Secretly Eating Memory (And How ARC is Both Saving and Destroying You
• Debug crashes in iOS using MetricKit
• Lazy-loading views with LazyVStack in SwiftUI
• Why 90% of SwiftUI Apps Get Dependency Injection Wrong
iOS 26, iPadOS 26, macOS Tahoe 26, tvOS 26, visionOS 26 и watchOS 26 скоро станут доступны клиентам по всему миру, а это значит, что теперь вы можете отправлять приложения и игры, использующие самое масштабное обновление дизайна от Apple. Вышел Xcode 26 Release Candidate (правда, качается очень плохо) и теперь с его помощью можно заливать версии приложений под новые ОС. С апреля 2026 года приложения и игры, загружаемые в App Store Connect, должны быть созданы с использованием iOS 26 и iPadOS 26 SDK или более поздней версии.
• В App Store открыт прием приложений для новейшие версии ОС
• Why Your Swift App is Secretly Eating Memory (And How ARC is Both Saving and Destroying You
• Debug crashes in iOS using MetricKit
• Lazy-loading views with LazyVStack in SwiftUI
• Why 90% of SwiftUI Apps Get Dependency Injection Wrong
AppTractor
В App Store открыт прием приложений для новейшие версии ОС
Создавайте свои приложения и игры, используя Xcode 26 Release Candidate и последние SDK, тестируйте с помощью TestFlight и отправляйте на рассмотрение в App Store.
👍1
Android
Gemini по умолчанию обучается на ваших входных/выходных данных, и если включить полный контекст, он может обучаться на всем вашем исходном коде. Пишут, что это включено по умолчанию и решение — отключить плагин Gemini (это занимает 15 секунд).
• Compose + Koin + Jetpack Navigation: что мы поняли за 2 года
• Повышение производительности приложения за счет лучшего сокращения ресурсов
• SkyHigh 16KB Doctor — помощь в миграции на 16 Кб
• Kotlin 2.2.20 Released
• HDR and User Interfaces
• Android ViewModel Interview Questions: Complete Guide with Real-World Implementation
• Gemini in Android Studio trains on your code
• Mastering MVI Architecture: Your Complete Interview Guide with Real-World Implementation
Gemini по умолчанию обучается на ваших входных/выходных данных, и если включить полный контекст, он может обучаться на всем вашем исходном коде. Пишут, что это включено по умолчанию и решение — отключить плагин Gemini (это занимает 15 секунд).
• Compose + Koin + Jetpack Navigation: что мы поняли за 2 года
• Повышение производительности приложения за счет лучшего сокращения ресурсов
• SkyHigh 16KB Doctor — помощь в миграции на 16 Кб
• Kotlin 2.2.20 Released
• HDR and User Interfaces
• Android ViewModel Interview Questions: Complete Guide with Real-World Implementation
• Gemini in Android Studio trains on your code
• Mastering MVI Architecture: Your Complete Interview Guide with Real-World Implementation
Reddit
From the androiddev community on Reddit: PSA: Gemini in Android Studio trains on your code
Explore this post and more from the androiddev community
👍6