apptractor | Unsorted

Telegram-канал apptractor - Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

10992

Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov • Аудитория https://t.me/apptractor/1066 • Сайт https://apptractor.ru/ • Поощрения: https://boosty.to/apptractor

Subscribe to a channel

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Как и предполагалось с самого начала, суд отложил требования о запуске альтернативных магазинов в Google Play и практически всех остальных пунктов нашумевшего две недели назад решения. Пока осталось только то, что начиная с 1 ноября 2024 года Google запрещено заключать сделки с операторами связи или производителями устройств, которые блокируют предустановку конкурирующих магазинов приложений в обмен на деньги, долю прибыли или льготы. Все остальное будет предметом апелляции. Которая, как заведено и как показывает пример Apple, может идти годами.

Разработка

Короткий путь с Senior-ами
Собеседование продуктового аналитика в Авито: кейс-интервью
Shape Up, scrum out. Как решать проблемы юзеров за дни, а не за сторипоинты
AI в медицине
Software Engineer Titles Have (Almost) Lost All Their Meaning

Маркетинг и монетизация


Azar пытается вернуть случайные видеочаты Поколению Z
Где деньги: сравнение доходов App Store и Google Play

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

dmilicic/writing-a-personal-website-in-flutter-web-238cb7e69086">Writing a personal website in Flutter Web
mobileatexxeta/developing-accessible-mobile-apps-with-flutter-1f04cc8be83e">Developing accessible mobile apps with Flutter

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

iOS Swift for VS Code — iOS-разработка в VS Code
Макросы в Swift: Практическое руководство по использованию
Внедряем снепшот-тестирование, или пять стадий принятия неизбежного
Modular Navigation in SwiftUI: A Comprehensive Guide
Improve your app's UX with SwiftUI's task view modifier
Migrating Combine to AsyncAlgorithms
Create ZIP files in Swift without third-party dependencies
How Do Binaries work together? What breaks ABI?
Building a Customizable Segmented Control in SwiftUI
How to significantly improve incremental build time with xcodebuild

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Видео и подкасты за неделю @AppFiles

(iOS En) WWDC22: Visualize and optimize Swift concurrency
(iOS En) Principal Engineer shares tips to Master System Design and Architecture
(iOS En) SwiftUI Toasts
(iOS En) How to get started with Swift Testing
(iOS En) Create a Bold SwiftUI Flight Boarding Widget
(iOS En) Add Micro Interactions to your Tab Bar | SwiftUI
(iOS En) iOS/SwiftUI Chat App With Cursor
(And Ru) Как следить за качеством работы вашего кода. Tracer. Кирилл Попов
(And Ru) 1000 откликов и 0 собеседований — как не войти в айти в 2024: кодревью
(And Ru) Замена иконок — что может быть проще?
(And En) Custom Adaptive layouts in Compose
(And En) Region specific resources and broken localization
(And En) Applying the Builder Pattern in Kotlin
(Crs En) Mobile App Development Course with React Native, Supabase, Next.js
(Anl Ru) Собеседование продуктового аналитика в Авито: кейс-интервью
(Dev Ru) Shape Up, scrum out. Как решать проблемы юзеров за дни, а не за сторипоинты
(Tch Ru) AI в медицине

#ios #android #mobile #video

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Как мы улучшили производительность навигации на Android на 30%
Loaders — лоадеры для Jetpack Compose
Понимание прогноза глюкозы в AndroidAPS часть 2
Динамические модули в приложениях на Android: опыт использования Dynamic Feature Delivery
The updated Kotlin roadmap is here!
Compose Multiplatform 1.7.0 Released
Creating a responsive dashboard layout for JetLagged with Jetpack Compose

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Mistral выпускает новые ИИ-модели, оптимизированные для телефонов

Французский ИИ-стартап Mistral выпустил свои первые генеративные модели ИИ, предназначенные для работы на периферийных устройствах, таких как ноутбуки и телефоны.

• Новое семейство моделей, которое Mistral называет Les Ministraux, можно использовать или настраивать для различных приложений, от базовой генерации текста до работы в связке с более мощными моделями для выполнения задач.
• Доступны две модели Les Ministraux — Ministral 3B и Ministral 8B, обе из которых имеют контекстное окно в 128,000 лексем, что означает, что они могут освоить примерно 50-страничную книгу.
• Ministral 8B доступна для загрузки уже сегодня — правда, исключительно в исследовательских целях. Mistral просит разработчиков и компании, заинтересованные в самостоятельном развертывании Ministral 8B или Ministral 3B, связаться с ней для получения коммерческой лицензии.
• Кроме того, Ministral 3B и Ministral 8B через облачную платформу Mistral La Platforme или другие облака, с которыми стартап заключит партнерские соглашения в ближайшие недели. Стоимость Ministral 8B составляет 10 центов за миллион выходных/входных токенов (~750,000 слов), а Ministral 3B — 4 цента за миллион выходных/входных токенов.

И что: в последнее время наблюдается тенденция к созданию небольших моделей для конечных устройств. Google продолжает развивать свое семейство малых моделей Gemma, а Microsoft предлагает свою коллекцию моделей Phi. В последнем обновлении своего пакета Llama представила несколько небольших моделей, оптимизированных для работы на устройствах.

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Google начал развертывание Android 15 на Pixel
Компьютерное зрение на C++: пишем приложение для поиска объектов под Android
How we improved our Android navigation performance by ~30%
Testing Coroutines — Simplified
Using Kotlin Reflection to Automate Compose Navigation
runTest vs runBlocking — Simplified
omdubey170/hello-pentester-07209d5d8d42">Bypassing Location Restrictions on a Android App Using Frida

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Вот для чего, в конце концов, и нужны все ваши технологии - делать людей счастливыми. AR-очки для глухой девушки:

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Автор приложения Elite Hoops и одного из популярных блогов про Swift и iOS-разработку, поделился своими результатами за год. Если кратко, то у него 860 платящих клиентов и $3,000 MRR. Если не кратко, то всего его выводы, как ни банально, сводится к маркетингу и тому, что им надо заниматься. Из интересного - маркетинг через побочный проект побочного проекта и Supabase для обратной связи в приложении.

Разработка

Один год Elite Hoops: 12 маленьких уроков
Integrating Appium and Cypress for Unified Test Automation
Code review antipatterns

Маркетинг

17 Издание Индекса эффективности от AppsFlyer
Топ быстрорастущих приложений в России в октябре

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

Kotlin Multiplatform Developer Roadmap — план изучения Kotlin Multiplatform
Самые важные пакеты в экосистеме Dart и Flutter на Pub 2024
Как подружить Flutter и Huawei — настраиваем App Gallery. Часть 1
Не пытайтесь динамически загружать код в ваше Flutter-приложение
oleksandr.kriatov/automated-code-analysis-for-flutter-integrating-sonarcloud-with-github-actions-e82cfe951620">Automated Code Analysis for Flutter: Integrating SonarCloud with GitHub Actions
kerry.bisset/trying-to-start-a-multiplatform-company-store-with-kotlin-rpc-koin-ktor-and-wasm-57d60a356e01">Trying to Start a Multiplatform Company Store with Kotlin RPC, Koin, Ktor, and WASM

iOS

Swift Testing: How to Test Your iOS App’s Network Layer
Calculating the semantic distance between words with the Natural Language framework
What was early iOS development like

Android

Тесты для функций Compose в Amdroid
kerry.bisset/understanding-the-impact-of-multiple-navhosts-on-back-navigation-and-viewmodel-management-in-fe63a9b73f45">Understanding the Impact of Multiple NavHosts on Back Navigation and ViewModel Management in Jetpack Compose
himv1998/swiggy-sde-2-inteview-experience-android-7906956a924a">SWIGGY SDE-2 Inteview Experience (Android)
Android Studio Ladybug Feature Drop
myofficework000/7-kotlin-flow-operators-that-you-must-know-62eb726e3ff4">7 Kotlin Flow Operators that you must know

#ios #android #mobile #dev

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Рассказывают, что Google работает над официальным способом запуска Linux-приложений на Android. Весь способ будет сосредоточен в приложении Terminal, которое является частью Android Virtualization Framework (AVF) и содержит WebView, который подключается к виртуальной машине Linux на локальном IP-адресе, позволяя вам выполнять команды Linux с Android-хоста. Изначально приходилось вручную включать это приложение Terminal с помощью команды оболочки, а затем самостоятельно настраивать виртуальную машину Linux. Сейчас Google работает над тем, чтобы Terminal стал универсальным приложением, которое загружает, настраивает, запускает и взаимодействует с экземпляром Debian в виртуальной машине. Зачем нам Linux приложения? Ну, например, на Chromebook-ах работает Linux-версия Android Studio (правда, в версии для x86, в отличие от большинства Android на ARM). Так что, вероятно, это некий шаг в сторону разработчиков и превращения Android-устройств в более полезные терминалы.

Разработка

Путь тестировщика: ошибки, опыт, деньги
Мобильная разработка в Алисе и YaOS: как это работает
Перформанс мобильных приложений
Дизайн-система 2.0: менеджеры нужны
Двое за ноутом, не считая copilot’а, или Как внедрить парное программирование
Так много тимлидов хороших и разных. А я какой?
Стартап мечты превратился в кошмар
LinkedIn сообщает о 10 миллионах фрилансеров на Services Marketplace
3 Career Principles that got me to Director at Google

Маркетинг

Самые скачиваемые и зарабатывающие приложения в мире в сентябре 2024
Как определить целевую аудиторию и повысить охваты вашего мобильного приложения: полное руководство 
Elite Hoops Year One: 12 Bite-Sized Lessons
How Uber Eats makes you think you want to order food

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

Flutter Web глазами мобильного разработчика
Building a Cross-Platform Camera App with CameraK and Compose Multiplatform
Making Compose Multiplatform apps feel at home: removing ripple animation on iOS

#mobile #dev

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

Создаем анимацию печати текста на печатной машинке в SwiftUI
TinyStorage — простая и легкая замена UserDefaults для постоянного хранения данных
Собеседование iOS-разработчика: проектирование и лайфкодинг
Introducing Recap: What's Old Is What's New Again
uwaisalqadri/maintaining-syntactic-sugar-for-optional-in-swift-dfb7f9019fba">Maintaining Syntactic Sugar for Optional in Swift
Replacing Fastlane with Shell scripts
Security-scoped bookmarks for URL access
SaezChristopher/%EF%B8%8F-how-we-reduced-the-build-time-by-2-with-out-xcode-at-shopmium-part-1-f66f6ec51b05">How we reduced the build time by 2 with(out) Xcode at Shopmium

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Видео и подкасты за неделю @AppFiles

(iOS Ru) Собеседование iOS-разработчика: проектирование и лайфкодинг (+ все собеседования)
(iOS En) Improve Scroll Transitions | SwiftUI
(iOS En) Grid Multi-Selection using Pan Gesture | SwiftUI
(iOS En) How to Fix UIKit and SwiftUI Menu Buttons (make them easier to tap)
(iOS En) TDD Basics with SwiftUI
(iOS En) Adopt iPhone 16 Camera Control into your SwiftUI App
(iOS En) WWDC22: Design protocol interfaces in Swift
(And En) Now in Android: 110 - Android 15, Credential Manager, Android Studio Koala, Compose for TV
(And En) FULL Guide to Kotlin's Inline Keyword (inline, crossinline & noinline)
(And En) Micro Open Source: From Passion to Pet Project Publication
(Crs Ru) Flutter Web глазами мобильного разработчика
(Crs En) Build a Book Library App for Android & iOS using ROOM KMP (MVVM)
(Dev Ru) Мобильная разработка в Алисе и YaOS: как это работает
(Dev Ru) Путь тестировщика: ошибки, опыт, деньги
(Dev Ru) Перформанс мобильных приложений
(Dev Ru) Дизайн-система 2.0: менеджеры нужны
(Dev Ru) Двое за ноутом, не считая copilot’а, или Как внедрить парное программирование
(Dev Ru) Так много тимлидов хороших и разных. А я какой?
(Dev Ru) Стартап мечты превратился в кошмар
(Dev En) Databases In-Depth – Complete Course
(Dev En) Electron Course - Code Desktop Applications (inc. React and Typescript)
(Dev En) AWS Certified AI Practitioner (AIF-C01) – Full Course to PASS the Certification Exam

#ios #android #mobile #video

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Android 16 может позволить вам поместить любое приложение в плавающий пузырь
Selenoid на Android – от А до Я
Авто-трекинг производительности Room Database
kappdev/how-to-create-a-pulse-effect-in-jetpack-compose-265d49aad044">How to Create a Pulse Effect in Jetpack Compose
The day we (almost) lost 1,000 customers
sc128496/bypassing-multiple-checks-on-android-applications-a-security-researchers-experience-2ec1a3005b60">Bypassing Multiple Checks on Android Applications: A Security Researcher’s Experience

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Выиграй 4 000 000 ₽ на True Tech Champ

МТС приглашает опытных и начинающих разработчиков поучаствовать в чемпионате. В треке «Программирование роботов» нужно будет создать алгоритм для прохождения лабиринта. Победит тот, чей робот окажется самым быстрым. При этом не обязательно разбираться в устройстве роботов: эксперты трека уже сконструировали их и создали прошивку. Для участия достаточно уметь программировать на одном из языков: С++, C#, Go, Python, JS, Java.

Регистрация открыта до 12 октября, отборочные онлайн-этапы уже стартовали!

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

Участникам дадут доступ к API и подробные инструкции. Эксперты трека будут помогать, направлять и отвечать на вопросы на вебинарах.

Зарегистрироваться можно по ссылке.

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

На Medium статья "10 причин НЕ использовать Jetpack Compose" собрала 139 апвоутов, но все ее положения опровергли в первом же комментарии. До которого я добрался только переведя всю статью. Оказалось, что за хайповым заголовком скрывается хайповый же контент в стиле "О Боже, придется переписать тесты". Ну надо же, кто бы мог предположить. Прочитайте хотя бы чтобы мне просмотров нагнать ☺️

10 причин НЕ использовать Jetpack Compose
Паря в космосе: анимации с помощью Compose и Canvas
Transcribro — распознавание речи на устройстве
Как улучшить качество WebRTC-звонков на примере сервиса VK Звонки
Introducing Ink API, a new Jetpack library for stylus apps
Mastering FileProvider in Android: Secure File Sharing Explained
Place Scope Handling on Auto-Pilot with Koin & Compose Navigation
Drawing Custom Alerts on Top of Bottom Sheets in Jetpack Compose
Upgrading from AGP 7.4.1 to 8.5.2: A Developer’s Diary

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Ночной кошмар любого разработчика - посыпавшаяся база данных в приложениях у клиентов. В первой статье случай более легкий, просто не восстанавливался бэкап, но все равно, холодным потом покрыться можно. Впрочем, исправление оказалось довольно простым (дампим старую - создаем новую), так что покрыться ненадолго. Главная фраза статьи: “low-end Android — странные звери” 🤖

Разработка

Восстановление базы для миллионов пользователей

Маркетинг

Revyze — «TikTok для образования» — перенимает методики Duolingo
Что такое Product-Market Fit
How to get started with User-Generated Content

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

Что такое Home-виджеты и как их подружить с вашим приложением на Flutter
Build a Book Library App for Android & iOS using ROOM KMP (MVVM)
Advanced Flutter Techniques Every Mobile Developer Should Know
Qt 6.8 LTS Released!
Building offline-first mobile apps with Supabase, Flutter and Brick

#mobile #dev

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Суд приостановил решение об открытии Google Play и Android
Lets-Plot — мультиплатформенное черчение
Как следить за качеством работы вашего кода. Tracer. Кирилл Попов
1000 откликов и 0 собеседований — как не войти в айти в 2024: кодревью
Замена иконок — что может быть проще?
Забудьте про терминал! Как я избавлялся от рутинных ADB команды с помощью Shortcuts
Implementing Overslide interaction in Jetpack Compose
Unplugged DI - DI.Y Basics
Making my concurrent algorithm 6000% better
Using Kotlin Reflection to Automate Compose Navigation
Analyzing App Startup and Shutdown details in Android 15
That Weird Compose Crash
Circular Reveal Animations in Jetpack Compose

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

🌐🤖 Где деньги: сравнение доходов App Store и Google Play

Очевидный ответ — в App Store больше денег. Стандартное распределение считается как 1 к 2 - на каждый доллар трат пользователей в Google Play приходится 2 доллара трат в App Store. Однако новое исследование AppFigures показывает несколько иную картину.

• В сентябре только 16% всех доходов было получено от покупок в Google Play и 84% — в App Store.
• Если говорить о конкретных долларах, то, по оценкам аналитики, в сентябре потребители потратили на приложения и игры $16.2 миллиарда. На долю Google Play пришлось $2.5 млрд, а на долю App Store — оставшиеся $13.7 млрд. Это валовой доход, то есть то, что пользователи потратили на покупки в приложениях до того, как Apple и Google взяли свои комиссионные.
• Не все категории одинаковы. Больше всего денег потребители потратили на игры — $5.1 млрд в App Store и Google Play. $3.9 млрд, или 75%, пришлось на App Store, так что если у вас есть игра, App Store — самое подходящее место. Забавный факт — App Store дает играм наименьшую долю по сравнению со всеми остальными категориями, кроме одной (Покупки).
• Помимо игр, в пятерку лучших категорий по общему объему трат входят Развлечения, Стиль жизни и Знакомства, Социальные сети и Фото и видео. На долю App Store приходится от 83 до 97% дохода этих категорий.

И что: есть много причин выпускать приложение на обеих платформах, но если доход - ваша главная цель, начните с App Store.

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

В первой статье рассматривается интересная техника сжатия данных - «сжатие с общим словарем». Она позволяет в определенных ситуациях радикально уменьшить объем передаваемых приложениями данных и, в общем то, не так уж трудна для внедрения. Как пишут, эта техника уже давно используется в таких компаниях, как Google и Amazon, но в последнее время она получила широкое распространение и в сообществе мобильных разработчиков. В целом, даже если вам не надо, посмотрите как оно бывает.

Разработка

Ускоряем работу приложения с помощью сжатия с общим словарем
Google выпустил корпоративную версию Gemini Code Assist
Mistral выпускает новые ИИ-модели, оптимизированные для телефонов
Тысячи иконок и адаптация под RTL: проектирование интерфейса шаблона мобильного приложения для партнёров Travelpayouts
How we Outsmarted CSGO Cheaters with IdentityLogger
Programming a first person shooter from scratch like it's 1995
Be Suspicious of Success

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

Compilers, Virtual Machines and Code Analysis - What makes Dart and Flutter run

#mobile #dev

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

Exploring SwiftUI: Understanding TextRenderer to Animate Words
Tokenizing text with the Natural Language framework
Interactive Toasts SwiftUI
How to get started with Swift Testing

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Интересную позицию сформулировал автор “Антипаттернов Code Review”. Когда один разработчик становится рецензентом кода другого, эти отношения создают временную власть. Рецензент имеет право предотвратить конкретный коммит, даже если в остальное время он не имеет никакой власти над автором кода. Но с полномочиями приходит ответственность. И вы должны использовать полномочия только по назначению, и всегда настолько, насколько это необходимо. В данном случае это сделать код как можно лучше, в соответствии с тем определением «хорошего», которое выработала команда разработчиков в целом. А не использовать эту временную власть над другим разработчиком в качестве рычага для достижения каких-то своих личных целей, возможно, не зависящих от качества кода, а возможно, активно противостоящих ему. В общем, искусство Code Review не всегда лежит в области кода. А иногда и в области Review.

Разработка

Антипаттерны Code Review
Early создает Unit-тесты с помощью ИИ
The Senior Shortcut

Маркетинг

How to brew the perfect Halloween campaign for app growth

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

reachbhakhand/mastering-null-safety-in-dart-a-practical-guide-for-flutter-developers-3f654c71b39e">Mastering Null Safety in Dart: A Practical Guide for Flutter Developers

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

Вычисление семантического расстояния между словами с помощью Natural Language Framework
Tuist: добавляем генерацию проекта в текущее приложение
iOS Performance Optimization — рекомендации по оптимизации iOS-приложений
rishixcode/networking-async-await-in-swiftui-e3bdc9a92cfb">Networking Async/Await in SwiftUI
Building a Custom Progress Bar in SwiftUI
Reinventing Core Data Development with SwiftData Principles
Creating a Theme manager for UIKit using Combine in Swift
Faster iOS Networking with Shared Dictionary Compression

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

🤖 Google начал развертывание Android 15 на Pixel

Можно сказать, что Android 15 официально вышел. Окончательная версия операционной системы была опубликована в Android Open Source Project в прошлом месяце, но на тот момент она еще не была доступна на телефонах и планшетах Pixel, а также на других основных устройствах Android. Сегодня Google объявил, что она наконец-то появилась на устройствах Pixel, вместе с рядом новых функций.

• Одной из главных новых функций в Android 15 является возможность создания «личного пространства» для приложений, которые вы хотели бы скрыть от других людей, получивших доступ к вашему телефону (Google приводит в пример социальные приложения, приложения для знакомств или банковские приложения).
• Многие устройства под управлением Android - не только Android 15 - получат функцию Theft Detection Lock.
• На раскладушках и планшетах Android 15 позволит пользователям закреплять и откреплять панель задач, чтобы они могли выбрать несколько более удобный доступ к своим приложениям. Они так же получат модернизированный режим мультизадачности с возможностью запуска двух приложений на одном экране.
• Android получил функцию архивации приложений.
• Google также начинает раскатывать новый пакет функций (feature drop) для Pixel.

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Вот он – шанс погрузиться в разработку игр, если очень давно хочется! 

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

RuStore Mobile Conf: GameDev — это площадка для общения и обмена опытом между разработчиками мобильных игр, бизнесом и экспертами индустрии. На конференции поговорят про все ключевые аспекты создания игр — от идеи до монетизации.

Участвуйте:
• Когда: 2 ноября;
• Совершенно бесплатно; 
• Можно представить свою игру и получить фидбэк от спикеров.

Не упустите! Ссылку на регистрацию прикрепляю

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Google готовится запустить Linux-приложения на AndroidДень, когда мы (почти) потеряли тысячу клиентов
Зачем нужен crossinline — вопросы с собеседований
Xbox начнет продажи игр в приложении для Android
MusicSearch — песни, исполнители и все, что с ними связано
Обходим ошибку в системных настройках печати на телефонах RealME
Ktor 3.0 Is Now Available With New Features and Improved Performance
michalankiersztajn/kotlin-design-patterns-builder-explained-b95f14ea730c">Kotlin Design Patterns: Builder Explained
Seamless Real-Time Location Tracking with gRPC, Kotlin & Jetpack Compose
One click dependencies fix

#android

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Остерегайтесь парения в космосе

Вся разработка за неделю - странное поведение UserDefaults и признание Google Play монополией, анимации космоса и авто-трекинг производительности, роль продуктового дизайнера, как перехватывают зашифрованный HTTP-трафик, новый рекорд приложений с подпиской и многое другое. Заходите!

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

🔨 Автор статьи “Остерегайтесь UserDefaults” открыл прекрасное. Оказывается, iOS иногда все-таки шифрует данные в UserDefaults (как она решает что шифровать я так и не понял, но не суть). А расшифровать их можно только когда пользователь разблокировал устройство. Учитывая Live Activity на экране блокировки и предварительный разогрев приложений получаем превосходную коллизию, когда UserDefaults не может выполнять то, собственно для чего создавалась (например, получает даже не nil, а 0 вместо количества заходов пользователя в приложение):

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

Но все не так плохо - автор написал библиотеку для хранения данных.

Разработка

My negative views on Rust

Маркетинг

Как TikTok бустит монетизацию, шеринг контента и количество сессий с помощью геймификации

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

Рецензия на книгу “Flutter и Dart. Сборник рецептов: Разработка полнофункциональных облачных приложений”
dmroznurr/customizable-calendar-widget-with-flutter-flutter-custom-calendar-b8e7bedb159d">Customizable Calendar Widget with Flutter: flutter_custom_calendar

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

Остерегайтесь UserDefaults: история о труднопонимаемых ошибках и потерянных данных
Пишите на Swift как Apple
DevTutor for SwiftUI — примеры SwiftUI
Applying visual effects combined with scrolling in SwiftUI
How to listen for property changes in an @Observable class using AsyncStreams
Mastering Swift’s RunLoop: A Comprehensive Guide
Mastering container views in SwiftUI. Values.
dhairyavora_35186/swift-memory-handle-with-care-a-fun-dive-into-advanced-ios-memory-management-4a0b2792a5e5">Swift Memory: Handle with Care! A Fun Dive into Advanced iOS Memory Management

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Разработка

Бывшие члены команды Google Maps создали доску для совместной работы на основе ИИ
«Яндекс» увеличил награду для охотников за ошибками в мобильных приложениях до миллиона рублей
My First Game with Carimbo, My Homemade Engine, For my Son
Cognitive Load is what matters

Маркетинг

В приложение Philips Hue добавили дополненную реальность

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

Humble Opinion About Getx

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

iOS

uwaisalqadri/write-swift-like-apple-4c4331cf140c">Write Swift Like Apple
UserDefaults and Observation in SwiftUI: How to Achieve Precise Responsiveness
Crafting a Typewriter Text Animation in SwiftUI
Introducing Tiny Storage: a small, lightweight UserDefaults replacement

#ios

Читать полностью…

Mobile Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Android

Google должен открыть Android для сторонних магазинов
Hidden Gems of the Kotlin Standard Library - List
Enhance Your App’s Performance: Optimizing API Calls with OkHttp Caching
10 reasons to NOT use Jetpack Compose
nachare.reena8/a-deep-dive-into-android-hardware-backed-keystore-3b0149356870">A Deep Dive into Android Hardware-Backed Keystore

#android

Читать полностью…
Subscribe to a channel