Mobile Development by AppTractor – Telegram
Mobile Development by AppTractor
11K subscribers
1.85K photos
39 videos
11 files
4.62K links
Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov

• Аудитория https://news.1rj.ru/str/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Хочу сделать канал про ИИ - с упором на практическое применение, со статьями и новостями. Будете участвовать?
Anonymous Poll
50%
Да
23%
Нет
16%
Не знаю
12%
Посмотреть
Видео и подкасты за неделю на @AppFiles

(iOS Ru) Исследуем мир фото и видео редакторов
(iOS Ru) Найди и исправь ошибки в коде — Задачи с собеседования
(iOS Ru) Запускаем приложения на своем iOS-симуляторе
(iOS Ru) Осторожно, Combine!
(iOS Ru) Позаботимся о памяти при использовании value-типов
(iOS Ru) Swift – больше, чем язык для iOS
(iOS En) Videos from Swift Heroes 2024
(iOS En) Staggered Animated View Using SwiftUI
(iOS En) Advanced SwiftUI Animations - PhaseAnimator
(iOS En) A case for Custom Bindings in SwiftUI: Essential Tips and Tricks
(iOS En) VoiceMemos Waveform Audio Scrubber Using SwiftUI - Waveform Visualization
(And Ru) Почему вам стоит включить Gradle Configuration Cache
(And Ru) Интеграция GeckoView в Dynamic Feature
(And Ru) Последнее слово в Android-навигации
(And En) Introduction to the SDK Runtime
(And En) How to Refactor Legacy Android Code With a Clear Step-By-Step Approach
(And En) Applying the Observer Pattern in Kotlin
(And En) Validating the chaos of RSS feeds with JetBrains’ Junie & some domain modeling sorcery
(Crs Ru) Kotlin не для Android
(Crs Ru) Как мы делали суперапп «Дилер онлайн», и что из этого получилось
(Crs Ru) Совместная работа Kotlin/Native GC и ARC в iOS
(Dev Ru) Правовой статус кода

Что было год назад:

(Crs Ru) Flutter Dev Podcast #45: Собеседования на позицию Flutter-разработчика
(Dev Ru) Пишем рекомендательную систему музыки на Java
(Dev Ru) Задача из Моего Собеседования в Amazon
(Dev Ru) Ада Лавлейс и программирование
Осознанный подход к метрикам
👍2
Хакнуть утечки памяти

Новый дайджест за прошедшую неделю со всеми материалами - iOS-разработка в Zed и Picture-in-Picture в 2ГИС, автоматизация версионирования и системные идеи, которые никогда не работают, посудомойка в облаке, дело асинхронного программирования, ускорение Android-сборки и многое другое. Заходите!
👍2
👩‍🚒 Apple Invites не разрушили рынок, а создали его заново

Когда несколько месяцев назад Apple, казалось бы внезапно, выпустила Apple Invites, все в интернете были готовы к тому, что весь рынок приложений для приглашений рухнет. Или, как сказали бы опытные разработчики, были готовы к “шерлокированию”.

Согласно AppFigures, приложение Apple Invites стартовало очень хорошо, добавив 1.6 млн новых загрузок в первую неделю своего появления в App Store. Но потом установки довольно быстро пошли на спад, составляя в среднем 45 тысяч в день на протяжении большей части февраля, и продолжили падать в марте, составляя в среднем 25 тысяч ежедневных загрузок на протяжении большей части месяца.

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

Все приложения для приглашений в этой подборке получили больше загрузок после выхода Apple Invites по сравнению с прошлым годом, и это вполне логично. Apple показала людям, которые на самом деле не знали о существовании приложений для приглашений, что они есть, и Apple Invites, будучи несколько простым и доступным только в App Store, заставил их искать альтернативы. Количество загрузок Evite выросло на 7%, Paperless Post — на 10%, а Partiful, приложение, которое все упоминали в феврале в сравнении с Apple Invites, выросло на 295%. Punchbowl был единственным конкурентом, у которого не было отмечено никакого роста, но он самый маленький из всех.

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

Так что не каждый релиз от Apple — это плохо.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👌2
ИИ-краулеры — это тараканы интернета, считают многие разработчики. Хотя любой сайт может стать мишенью для веб-краулеров, что иногда может привести к его падению из-за нагрузки, разработчики открытого кода «непропорционально» страдают от ИИ-краулеров. Проблема в том, что многие ИИ-боты не соблюдают Robots Exclusion Protocol и robot.txt. В январе разработчик FOSS описал, как AmazonBot без устали парсил Git-сервер, вызывая DDoS. Блокировать ИИ-краулеров бесполезно, потому что они лгут, меняют свой user agent, используют живые IP-адреса в качестве прокси и т.д. Они будут парсить ваш сайт, пока он не упадет, а потом будут обращаться к нему снова и снова. По словам одного из разработчиков, «даже приходится прибегать к запрету целых стран», чтобы отбиться от ИИ-ботов. В ответ на это создали инструмент под названием Anubis. Anubis — это обратный прокси-сервер, который надо пройти, прежде чем запросы попадут на Git-сервер. Он блокирует ботов, но пропускает браузеры, управляемые людьми. Cloudflare предложил бесконечный лабиринт из поддельного контента, куда заманивают незваных ботов. Он предназначен для того, чтобы “замедлять, запутывать и тратить впустую ресурсы AI краулеров и других ботов, которые не соблюдают директивы”.

Разработка

Разработчики вынуждены отбиваться от ИИ-парсеров
Mocking Star — мощный инструмент мокирования запросов
Правовой статус кода
Deploying a Swift Server App to Fly.io and Railway
Setting up a translation system for your Android and iOS app
There is no Vibe Engineering

Маркетинг и аналитика

Apple Invites не разрушили рынок, а сделали вот что
Протестируйте уродливый пейвол: вот почему вам стоит это сделать
Установки Signal после скандала выросли на 28%

Кроссплатформа

Kotlin не для Android
Как мы делали суперапп «Дилер онлайн», и что из этого получилось
Совместная работа Kotlin/Native GC и ARC в iOS
The Ultimate React Native Course - Build Your First Mobile App in 2025
Exposing SwiftUI Views to React Native: An Integration Guide
Deep Dive into Haptics: Enhancing User Experience through Tactile Feedback
👍5
Все знают, какие приложения установлены на вашем телефоне

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

Автор статьи изучил несколько самых популярных приложений в Индии и выяснил, что все они так или иначе получают эту и множество другой информации:
Это заставляет меня задуматься, в чем была цель политики видимости пакетов Google? Она должна была защищать пользователей, но большинство приложений, похоже, все равно нашли способы ее обойти. А данные об установленных приложениях очень конфиденциальны и личные.

Пожалуйста, помните, что в следующий раз, когда вы случайно установите приложение на свое устройство Android, эта информация будет транслироваться по всему миру. Брокеры данных будут использовать ее для составления вашего профиля, сопоставлять ее с данными о вас из других рекламных сетей, и в конечном итоге она будет использована для решения о том, сколько вам придется заплатить в следующий раз, когда вы закажете самсу.
😱10
В Tinder появилась игра Игра (The Game Game), в которой надо оттачивать навыки разговорного флирта на разговорах с ИИ. В процессе игры вам выдается «стопка карточек», на каждой из которых изображен ИИ-персонаж и сценарий (например, случайный перехват чужого багажа в аэропорту). Цель — за ограниченное время назначить свидание или получить номер телефона. По результатам получите оценку, основанную на шкале из трех значков пламени Tinder. Как пишут, «это всего лишь игра. Она не предназначена для того, чтобы заменять общение между людьми. На самом деле, она предназначена для того, чтобы поощрять реальные разговоры с реальными людьми в реальной жизни». Однако все больше дейтинг-приложений используют ИИ и, кажется, уже близок тот день, когда Матрица нас поимеет знакомиться будем полностью через ИИ-агентов. Ну и жениться/выходить замуж тоже за них 🧠

Разработка

Нет никакого вайб-инжиниринга
How our Meditation App Broke Records Overnight, almost crashing our servers
It’s all fun and games… until your boss starts vibe coding
WattWise: Terminal-Based Power Monitoring Using Smart Plugs

Маркетинг и аналитика

Новая игра Tinder проверяет ваши навыки флирта с ИИ-персонажами

Кроссплатформа

Реализация простого SSE клиента на Dart
Develop Your Own Networking Client In Compose MultiPlatform
Shopping list and Compose Multiplatform
Build Gen AI Apps Fast with Firebase and Flutter: A Hands-On Starter Guide
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Swift набирает обороты. Команда Swift представила первую стабильную версию swiftly, менеджера версий Swift, который избавит вас от хлопот по установке, управлению и обновлению вашего набора инструментов Swift. Последняя версия Swift поставляется с Xcode для написания приложений для платформ Apple. Но, возможно, вы захотите установить Swift на другую платформу, например Linux, или использовать другую версию набора инструментов для создания служб или инструментов командной строки. Загрузка, извлечение и установка надежной сборки Swift вместе с соответствующими зависимостями для вашей операционной системы может потребовать довольно много ручных и подверженных ошибкам шагов. Swiftly — лучший инструмент для установки автономной цепочки инструментов, предоставляющий команды для установки Swift на новую систему, обновления до последней стабильной версии и экспериментирования или тестирования с “ночными” снепшотами или более старыми версиями. Он также позволяет легко переключаться между несколькими установленными цепочками инструментов. Вы даже можете добавить файл в репозиторий своего проекта, чтобы swiftly использовал одну и ту же версию цепочки инструментов для всех членов вашей команды разработчиков.

Разработка

Это весело и забавно… пока ваш босс не узнает про вайб-кодинг
Как мы оживили DPED: ИИ-проект для улучшения мобильных фото до снимков с «зеркалок»
How to work in tech when your job isn't safe
Making Uber’s ExperimentEvaluation Engine 100x Faster
Train & Weather Tracker with Raspberry Pi & E-Ink
The 13 software engineering laws

Маркетинг и аналитика

Skylight — альтернатива TikTok, созданная на основе Bluesky

Кроссплатформа

Dart / Flutter — применяя zero / empty объекты ко всему
Leveraging Dart FFI for high-performance ML in Flutter — a practical implementation
How to Implement Swipe Actions in Flutter with Slidable
Flutter Belgium Meetup #23

iOS

Вышел swiftly 1.0
Документируем код с помощью DocC
Конкатенация против интерполяции текста в SwiftUI
Say Goodbye to dismiss: A State-Driven Path to More Maintainable SwiftUI
Create a Custom Single Select Button in SwiftUI

Android

Tack Android — красивый метроном для Android
BundledSQLiteDriver: новый взгляд на SQLite в Android и Kotlin Multiplatform
Как мы сделали дизайн-систему для мобильных устройств и TV
Why you should learn multi-module architecture in Compose as soon as possible!
Understanding Dispatchers: Main and Main.immediate
Hybrid Encryption in Android: Secure Communication Between Mobile and Backend Systems
53
Шон Годекке (Zendesk, Staff Software Engineer в GitHub) написал про то, как работать в условиях усилившейся конкуренции и нестабильности. Наивный подход — просто работать так же, как работали, но добавить больше часов. Правильный (по Шону) - сосредоточиться на более рациональном использовании времени (в частности, предлагается временно сократить или приостановить написание тестов, рефакторинг, помощь другим командам, изучение новых технологий и функций, работу над внутренними процессами команды) и упарываться над тем, что важно:
Когда на вас обращено внимание, вы должны работать так усердно, как только можете. Это как если бы у вас был краткосрочный множитель на счете в видеоигре, и вы отчаянно пытаетесь набрать очки, пока применяется множитель. Если говорить обо мне, то бывают периоды, когда я работаю по двенадцать часов в день, и периоды, когда я работаю намного меньше восьми часов.

Абсолютно необходимо выполнять как часть «работать меньше», так и часть «работать больше». Никто не может все время бежать спринт. Если вы работаете обычные восемь часов, а затем увеличиваете время до двенадцати для крупных проектов, вы, скорее всего, выгорите.


Разработка

Как работать в разработке в условиях спада
Что такое симплекс-метод

Маркетинг и аналитика

Тим Суини назвал Apple и Google «бандитскими» компаниями
Push Notifications Statistics (2025)

Кроссплатформа

Flutter Routing Done Right: A Scalable Approach
👍5😁1
Чувствуете себя надежно на своем месте на работе?
Anonymous Poll
32%
Да
4%
Уже да
17%
Уже нет
11%
Нет
23%
Все мы тут самозванцы
12%
Посмотреть
Бразилия расследует App Tracking Transparency

Apple подвергается пристальному вниманию в Бразилии из-за обвинений в антиконкурентной практике в App Store. Хотя компании было предоставлено больше времени для обсуждения дела, бразильский антимонопольный регулятор Cade теперь расследует действия Apple из-за функции App Tracking Transparency.

Началось все из-за жалоб запрещенной компании на M, которая утверждает, что только сторонним приложениям необходимо запрашивать у пользователей разрешение на сбор их данных, в то время как приложения Apple имеют право бесплатно собирать и делиться данными с компанией. Бразильский регулятор говорит, что «есть доказательства» того, что Apple «собирает и обрабатывает информацию от своих пользователей на более выгодных условиях, чем те, которые предлагаются третьим лицам».

В Бразилии Apple пока не предстанет перед судом, поскольку Cade все еще изучает положения и условия компании для ATT в сторонних приложениях. Конечно, если регулятор сочтет условия ATT несправедливыми, компания может столкнуться с штрафами в Бразилии в будущем. Но несколько дней назад Франция оштрафовала Apple на 132 миллиона долларов и тоже из-за ATT. Местный регулятор не подверг сомнению сам ATT, но обнаружил, что методы его реализации «искусственно усложняют использование сторонних приложений и искажают нейтральность фреймворка в ущерб небольшим издателям, финансируемым за счет рекламы». Получилась асимметричная система, в которой издатели обязаны получать двойное согласие пользователей для отслеживания на сторонних сайтах и ​​в приложениях, в то время как Apple не запрашивала согласия у пользователей своих собственных приложений.
👍4
📺 Видео и подкасты за неделю на @AppFiles

(iOS Ru) Одна билд-система, чтоб править всеми
(iOS Ru) Влияние Swift Runtime на производительность приложения
(iOS Ru) Разрабатываем CLI-инструменты на Swift
(iOS En) Disable Interactive Dismissal of Navigation Zoom Transition
(iOS En) Localizing Apple UI in 2025
(iOS En) Monitoring iOS apps
(iOS En) SwiftUI in UIKit?! Watch Me Inject Animations into a UIKit App
(iOS En) SwiftUI Animation Bugs? Here's How I Fixed Them!
(iOS En) Animated Dialogs Like Family App Using SwiftUI
(iOS En) Creating an Over Top View in SwiftUI: A Unique Way to Present Edit Views
(iOS En) Swift Protocols - An Introduction
(And Ru) Как мы разработали свой фреймворк SingleState-навигации на Android
(And Ru) Танцы вокруг дерева семантики: UI-тесты Compose-экранов
(And Ru) Многомодульность — ответы на вопросы с экспертами
(And En) Enhancing app performance in Android
(And En) Anatomy of the SDK Runtime
(And En) No more Manual Koin Initialization - New Context Binding is Awesome
(Crs Ru) Kotlin в GitHub Actions. Расширяем горизонты KMP
(Crs Ru) Как я перестал бояться и полюбил компилятор Dart
(Crs En) Using Platform-Specific APIs in KMP Apps
(Dev Ru) Avito UX meetup: взаимодействие, метрики и мемы
(Dev Ru) Полный обзор новой операционной системы HarmonyOS Next. Получилось ли?
(Dev Ru) Профессия: cистемный аналитик
(Dev En) Full 2025 Backend Dev Crash Course for Beginners With Spring Boot (Kotlin, JWT Auth, MongoDB)
(Dev En) Code DeepSeek V3 From Scratch in Python - Full Course
(Dev En) How to Survive in 2025 Tech Job Market?

Что было год назад:

(And Ru) Как работает Android Work Profile
(And Ru) Разбор кода магазина приложений
(And Ru) Опыт, Java vs Kotlin и работа со списками
(Crs Ru) Как Compose Multiplatform for iOS может убить Flutter?
(Dev Ru) Открытое алгоритмическое собеседование
(Dev Ru) Как разрабатывать Яндекс Маркет, обеспечивать качество и работать с BDUI
(Dev Ru) Собеседование продуктового аналитика в Авито
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Жизнь после конкатенации

Все статьи, новости, видео и библиотеки за прошедшую неделю - конкатенация против интерполяции, дизайн-система для мобильных устройств и TV, применение zero/empty объектов, игра на LUA для часов Xiaomi Redmi Watch 4, уродливые пейволы, навыки флирта с ИИ-персонажами и многое другое. Заходите!
👍5
😰🇸🇱 Kotlin-bench - тест ИИ-моделей для Android-разработки

Kotlin-bench — это специализированный бенчмарк, разработанный для оценки производительности больших языковых моделей (LLM) и AI-агентов в задачах, связанных с реальной разработкой на Kotlin и Android. Цель бенчмарка — предоставить объективный инструмент для сравнения производительности различных LLM в контексте понимания и генерации кода на Kotlin.

Особенности Kotlin-bench

• Основан на реальных задачах: Бенчмарк включает 100 задач, взятых из популярных GitHub-репозиториев, таких как kotlinx.coroutines и Anki-Android. Эти задачи отражают реальные проблемы, с которыми сталкиваются разработчики при работе с Kotlin и Android.
• Объективная оценка решений: Для проверки корректности решений, сгенерированных моделями, используются юнит-тесты соответствующих проектов. Модель считается успешно справившейся с задачей, если её код проходит все тесты, что обеспечивает объективность оценки. ​
• Сравнение производительности моделей: Kotlin-bench позволяет сравнивать различные LLM по их способности решать задачи, связанные именно с Kotlin и Android.

На текущий момент бенчмарк Kotlin-bench продемонстрировал следующие результаты при оценке производительности LLM в задачах, связанных с разработкой на Kotlin и Android:​

Gemini 2.5: показала наилучший результат, успешно решив 14% задач. ​
Claude 3.7 (режим «thinking»): приблизился к результатам Gemini 2.5, также продемонстрировав высокую эффективность.
Deepseek R1: занял третье место по производительности.
OpenAI o3-mini: показал менее впечатляющий результат, решив лишь 2% задач.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥31😁1