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, инструменты, рынок и все остальное

🔥 Хотите научиться писать сетевой слой для iOS-приложений и подключать его к SwiftUI?

👉 Ждем вас на открытом вебинаре 22 августа в 20:00 мск, где мы разберём:

- как писать сетевой слой приложения оптимально;
- как подключать его к приложению на SwiftUI;
- чем нативный фреймворк отличается от Alamofire и Moya.

🔆 Урок подходит начинающим и продолжающим iOS-разработчикам.

👉 Встречаемся в преддверии старта курса «Специализация iOS Developer». Все участники вебинара получат специальную цену на обучение! 🔥

Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/czm6cB

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

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

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

Основы излишеств

Новая еженедельная подборка - закрытие CocoaPods и излишества чистой архитектуры, деструктуризация в Kotlin с примерами и знакомство с Flutter GPU, архитектура мобильного приложения в разрезе высоких нагрузок и построения экосистем, кто может стать программистом, сокращение количества вакансий для разработчиков и многое другое.

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

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

По подписке за $5 в неделю

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

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

После пандемического бума количество вакансий для разработчиков сократилось до минимума с 2020 года. Если за 100 взять 1 февраля 2020 года, то пик в 230 был в начале 2022 года, а потом все время шел спад. Сейчас индекс - 69. Интерпретировать это можно как перенастройку после чрезмерного найма в период пандемии. Аналогичным образом, результаты опроса разработчиков Stack Overflow за 2024 год показали, что средняя зарплата разработчиков снизилась на 10 тысяч долларов. Это так же можно рассматривать как восстановление статус-кво после предложения аномально высоких ставок в период карантина. Маленький свет в конце - прогноз Бюро трудовой статистики США на декаду обнадеживает, ставя разработчика программного обеспечения на второе место в списке профессий с наибольшим ростом — в стране по прогнозу появится более 400 тыс. новых рабочих мест.

Разработка

Количество вакансий для разработчиков сокращается
Как провести IT-обучение и не остаться в пустой аудитории. Опыт подготовки команды к SwiftUI и лайфхаки для менторов
Вредные советы, как приходить с вопросами к техлиду
Practices of Reliable Software Design
Apple Design Award Winner Devin Davies Shares His Learning Strategies

Маркетинг:

Spotify начал показывать цену на сайте в iOS

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

Как мы создали приложение для ТСД на Flutter с интеграцией 1С и внедрили его на 200 фабриках в Китае
Полный гайд по тестированию на Flutter. Часть 9: Best practices написания Unit-тестов
swathirandillath0/ensuring-seamless-user-experience-implementing-in-app-updates-in-flutter-7100e3acdbb7">Ensuring Seamless User Experience: Implementing In-App Updates in Flutter

#mobiledev

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

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

iOS

Apple открывает доступ к NFC в iOS 18.1
Apple разрабатывает настольного робота
Основы фреймворка Combine для ML в Swift
Recursive enums in Swift
The Tale of Method Sizzling: A Coding Adventure

#ios

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

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

🍎Apple разрабатывает настольного робота

Согласно сообщению Марка Гурмана из Bloomberg, у Apple есть «команда из нескольких сотен человек», работающая над новым продуктом.

• Это настольное устройство - у него будет дисплей в стиле iPad на роботизированной руке, которая способна наклонять его вверх и вниз, а также вращать на 360 градусов 🦾
• Устройство сможет отвечать на команды с помощью Siri или функций Apple Intelligence, таких как "посмотри на меня", которые смогут, например, наклонять экран, чтобы повернуться лицом к пользователю во время видеозвонка.
• Источники говорят, что компания планирует запустить устройство в 2026 или 2027 году, а его стоимость может составить около 1000 долларов.

И что: а как вы сможете использовать такую руку в своих приложениях? 🙈

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

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

Android

Использование Чистой Архитектуры в Android излишество? — Обсуждение на Reddit
rajputmukesh748/destructuring-in-kotlin-explained-with-examples-7928c83177b5">Destructuring in Kotlin: Explained with Examples
kerry.bisset/jetpack-compose-theme-with-composition-local-spacing-shaping-and-status-colors-a00890724f9c">Jetpack Compose Theme with Composition Local: Spacing, Shaping, and Status Colors
Efficient Render Passes — On Tile-Based Rendering Hardware

#android

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

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

Использование Чистой Архитектуры в Android излишество?

Один из разработчиков спрашивает на Reddit:

Лично я предпочитаю использовать MVVM или вообще не использовать архитектуру в Android. Является ли использование чистой архитектуры излишеством для Android или я просто неопытен и неинформирован?

В ответах ему накидали в панамку говорят о том, что для любого более или менее крупного проекта чистая архитектура это необходимость:

• Если этого не сделать, то любое изменение, внесенное в одну область, может повлиять на другие взаимосвязанные части, превращая обслуживание приложения в кошмар. Для простых приложений с несколькими экранами использование чистой архитектуры или MVVM может оказаться излишним. Однако для долгосрочного проекта, такого как банковское приложение, которое необходимо поддерживать в будущем, написание чистого кода с правильной архитектурой не просто необходимо — оно обязательно.
• Я бы сказал, что это неопытность в работе с большими кодовыми базами. Для больших приложений каждый раз, когда требования меняются или добавляются, если у вас нет слоя абстракции, вас ждут большие неприятности.
• Чистая архитектура — это не про добавление как можно большего количества слоев, а про то, чтобы основной/доменный код не зависел от фреймворков, IO, UI и т.д.
• Если цель — создать приложение и на этом закончить, то да, чистый код, хорошая архитектура и куча юнит-тестов будут излишеством. Но когда вам нужно иметь возможность быстро добавлять функции и исправлять ошибки в приложении, которое будет продолжать расти и должно жить 10+ лет, уравнение полностью меняется.

В конечном счете, наша цель — писать понятный, лаконичный, расширяемый и сопровождаемый (и тестируемый) код, причем не только для себя, но и для своих коллег. Таким образом, следуя «общим» принципам чистой архитектуры, вы достигаете чего-то достойного, знакомого всем.

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

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

Google только что провел презентацию своих новых устройств Made by Google 2024. Выше даю ссылку на обзор TechCrunch, но в целом ничего революционно нового не появилось. Как и в случае с Apple, Google сделал акцент на внедрение ИИ - Gemini будет работать на Pixel локально и делать все уже более или менее виденное (самари звонков, обработку фотографий, поиск товаров по изображениям и т.п.). Может быть завтра подъедет еще информация, но пока как то "скучно, девочки" (С).

Разработка

How we deleted 4195 code files in 9 hours
Enterprise Mobile Apps Development Principles

Маркетинг

Patreon будет платить 30% комиссию Apple

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

Внедрять Kotlin Multiplatform легко. Масштабировать сложно.
Что думают про Flutter техлиды: инсайты из опроса
Rust GUI library via Flutter, done simple
punnyarthabanerjee/foreground-services-in-flutter-run-tasks-when-your-app-is-minimized-dbc24f2c099d">Foreground Services in Flutter: Run tasks when your App is minimized

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

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

iOS

Реверс-инжиниринг iOS-приложения
Как вернуть контроль над состоянием данных с RemoteResult
Tracking geometry changes in SwiftUI
Cancellable withObservationTracking in Swift

#ios

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

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

Android

Используем библиотеку Android Security Lints для Android
Zoomable — увеличение жестами в Jetpack Compose
Когда ваше приложение умирает – жизненный цикл activity в Android для QA
Android Release Automation - Our Journey to Fully Automated Weekly Releases
Composing Suspend Functions
Using Clean Architecture on Android, is it an overkill?

#android

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

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

Как автоматически обнаруживать подводные камни

Подборка всех материалов за неделю - автоматическое обнаружение утечек памяти в CI/CD с помощью UI-тестов, эффективная работа с legacy кодом Medium и новая версия Flutter, знакомство с Mobile Farm, тестирование платежей в проде, дейтинг-приложение, работающее только по четвергам и многое другое. Подключайтесь!

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

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

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

(iOS Ru) Итоги одного года мобильной разработки с использованием NLP
(iOS Ru) Combine с нуля — реактивщина это просто
(iOS En) Building Compositional Grid Layout With iOS 18 APIs
(iOS En) The Best iOS Dev Portfolio Strategy
(iOS En) How to Reduce Log Verbosity in the Xcode Debug Console
(iOS En) Getting the MOST out of Xcode 16
(iOS En) Building App Intro Animations with Shape Morphing Effect Using SwiftUI
(And En) Targeting Android 15 - Why Your App Is NOT Ready
(And En) Channels in Kotlin Coroutines
(And En) Guide to Improving Compose Performance
(And En) Background Work in Android: Strategies and Best Practices
(And En) Applying the Strategy Pattern in Kotlin
(Crs En) Lifecycle path to Multiplatform
(Crs En) Kotlin Multiplatform in Google Workspace
(Crs En) KMP in Action A Production Case Study
(Dev Ru) Тулкиты кодогенерации Android vs iOS
(Dev Ru) Ускоряем карьерный рост в FAANG
(Dev Ru) Алгоритмы — самый провальный этап собеседований (+ все собеседования)
(Dev En) Operating Systems Course for Beginners

Что вы посмотрели за неделю?
#ios #android #mobile #video

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

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

Разработка

Жутко, но факт: как Uber тестирует платежи в продакшене

Маркетинг

Приложение ChatGPT поставило рекорд по выручке
Кейс Ozon и Bidease: как снизить CAC и CPO более чем на 30%

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

xayilmaz/how-to-develop-a-super-app-with-react-native-fe18fbe002c5">How to Develop a Super App with React Native?
alexey.inkin/deep-dive-into-writing-macros-in-dart-3-5-a1dd50914a7d">Deep dive into writing macros in Dart 3.5

#mobiledev

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

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

iOS

Как автоматически обнаруживать утечки памяти в CI/CD с помощью UI-тестов
Disk — хранение структур, изображений и данных
Exploring HealthKit: Working with State of Mind APIs
bellaposa/ios-app-reverse-engineering-de33ab6ca462">iOS App Reverse Engineering
Have Fun with Apple’s Virtualization.Framework

#ios

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

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

🌐🤖 Продвижение в сторах 2024

О большом потоке халявных органических пользователей из сторов грезит каждый первый владелец приложений. Хотите, узнать как их получить? Записывайтесь на вебинар «Тенденции и успешные кейсы продвижения в сторах: итоги лета 2024».

Темы:

• стратегии продвижения в поиске и работе с репутацией, которые принесут максимум результата
• как работают CSL (Custom Store Listing) под поисковые запросы в Google Play и почему их стоит использовать
• какие возможности для органического продвижения дают новые ASO-инструменты
• всё о новом функционале платформы Appbooster: мотив на зарубежные страны для Android, мультишаговые офферы, корректировка рейтинга, CPE-офферы для iOS.

Когда: 22 августа (чт) 16:00 мск
Длительность: 1-1,5 ч
Стоимость: бесплатно
Зарегистрироваться на вебинар

Реклама. ООО "АППБУСТЕР". ИНН 6316226020. erid: LjN8KMmnT

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

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

Epic Games Store с Fortnite запустился на iOS

Fortnite наконец-то вернулся на iOS, спустя чуть более четырех лет после того, как Apple удалила игру из iOS App Store, но доступна она только в ЕС. Игра запускается сегодня как в новой версии Epic Games Store для iPhone, так и через AltStore PAL, другой сторонний магазин приложений. Магазин Epic Games Store также запускается сегодня для пользователей Android по всему миру.

В настоящее время в мобильном Epic Games Store представлено всего три игры, но компания уже ведет переговоры со сторонними мобильными разработчиками.

По словам вице-президента и генерального директора Epic Games Store Стива Эллисона, в декабре Epic планирует представить в мобильном магазине «курируемый» выбор игр от сторонних разработчиков, а самопубликация (которая уже возможна на ПК) появится в начале 2025 года. Epic также планирует перенести в магазин «все», что предлагает на ПК: 88% долю доходов для разработчиков, бесплатные игры для игроков и возможность для разработчиков использовать свои собственные платежные платформы.

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

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

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

(iOS Ru) Поиск работы iOS разработчиком в текущих условиях 2024
(iOS En) Expandable Search Bar + Progressive Blur Effect
(iOS En) iOS 18 SwiftUI ScrollView DeepDive
(iOS En) SwiftUI: Test Push Notifications With iOS Simulators
(And Ru) ByteWeaver. Инструментирование байт-кода во имя великого блага
(And En) How to Get Access to ALL External Media Files (Works on Android 15!)
(And En) How to Pass Custom NavTypes in Compose Type-Safe Navigation
(And En) Kotlin's Elegant Deceptions Simple APIs, Unusual Tactics
(And En) Harmonizing Kotlin codebases with Konsist
(And En) Android, Compose, Multiplatform & Server - Inject them all with Koin
(And En) Elevating Android App Resilience: Incident Management Strategies
(Crs Ru) Почему вам не нужен Kotlin Multiplatform
(Crs Ru) Создание indoor-карты здания во Flutter
(Crs En) Diving into Advanced Compose Multiplatform Modifiers and Their Impact on Multiplatform Development
(Dev Ru) Кто реально может стать программистом?
(Dev Ru) 30 вопросов команде и себе — техника и практика формулировка хороших вопросов
(Dev Ru) VK Звонки: поднимаем планку качества WebRTC-звонков
(Dev Ru) Как пользоваться DivKit
(Dev En) Kotlin for Data Analysis: Exploring Dataframes and Visualizations in Notebooks
(Dev En) AWS Certified Developer Associate Certification Course
(Dsg En) Design a Car mobile app for iOS 18 in Figma

Что вы посмотрели за неделю?
#ios #android #mobile #video

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

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

Android

Деструктуризация в Kotlin с примерами
Jetpack Compose Endless Horizontal Pager Animation — демо горизонтального пейджера
Prefer Composition over Inheritance
Android Process Lifecycle + Coroutines == ❤️
Advanced Bottom Sheet With Flexible Configuration for Compose

#android

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

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

Тестирование — это кропотливый труд. Но иногда найти полезные ресурсы бывает сложнее, чем отыскать баг. Попросили коллег-тестировщиков из selectel">@Selectel поделиться рекомендациями, которые помогают им в работе и улучшении навыков ✅
 
В материале на канале @Selectel найдете найдете избранные инструменты, библиотеки и книги от практикующих экспертов. Читайте подборку по ссылке, а потом подписывайтесь на их канал, чтобы не пропустить топовые IT-материалы в удобном формате.

Реклама АО «Селектел». ИНН: 7810962785
Erid: 2Vtzqvwy4PE

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

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

FYI: Мир узнал дипфейках (да и дипфейки, конечно, улучшились)! За последние несколько дней пакет под названием Deep Live Cam (выложен на GitHub) получил широкую освещение в социальных сетях, потому что он может взять лицо человека из одной фотографии и применить его к видео с веб-камеры в реальном времени, следя за позой, освещением и выражением лица человека, который снимается. Хотя результаты не идеальны, программа показывает, как быстро развиваются технологии и как возможность обманывать других людей удаленно становится все проще с течением времени.

Разработка

Deep Live Cam заменяет лицо в трансляции в реальном времени
RePalm: Towards the first unauthorized PalmOS port

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

От Web к Native с React
Знакомимся с Flutter GPU
PWA vs Native: где приложения для iOS и Android больше никогда не пригодятся
Оптимизация производительности Flutter приложений
piyushhh01/flutter-magic-changing-app-icons-dynamically-even-on-stubborn-android-fff02c3829dc">Flutter Magic: Changing App Icons Dynamically (Even on Stubborn Android!)

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

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

iOS

Swift Fluent Icon — fluent иконки от Microsoft
CocoaPods прекращает развитие и переходит в режим поддержки
Exploring SwiftUI: Animating Mesh Gradient with Colors in iOS 18
Considerations for Using Codable and Enums in SwiftData Models
Extend Your App’s Controls Across the System
shibinbshaji007/exploring-local-storage-in-ios-istorageenumv2-0-e8e91af79c32">Exploring Local Storage in iOS: iStorageEnumV2.0

#ios

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

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

☕️ CocoaPods прекращает развитие и переходит в режим поддержки

CocoaPods уже около 13 лет, и за это время платформа  настолько упростила процесс работы с библиотеками, что де-факто превратилась в способ обмена кодом в сообществе iOS и Mac.

В 2015 году Apple объявила о том, что проект CocoaPods будет заменен собственным решением, поскольку они собираются создать свой собственный менеджер пакетов - Swift Package Manager. Этот шаг фактически уничтожил весь энтузиазм разработчиков CocoaPods, замедлив активное развитие проекта, поскольку конкуренция с Apple на их собственной территории редко стоит часов, потраченных на волонтерскую работу.

Cейчас CocoaPods переходит в то состояние, когда работа будет обусловлена только внешними причинами. Это могут быть проблемы безопасности или изменения в Xcode, которые требуют изменить некоторые настройки и сделать новую сборку. Никаких новый фич не будет.

Долгосрочный план - через несколько лет сделать проект Read-only. В целом же разработчикам рекомендуют переходить на Swift Package Manager.

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

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

Android

Cat Activity — трансляция активности в IDE в Discord
galou.minisini/advanced-kotlin-flow-cheat-sheet-for-android-engineer-cb8157d4f848">Advanced Kotlin Flow Cheat sheet (for Android Engineer)
Made by Google 2024

#android

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

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

Если вы думаете, что в дейтинге ничего нового не изобрести, то вы сильно ошибаетесь. Представляю Thursday - дейтинг, который работает только по четвергам. Более того - в полночь все совпадения исчезают. Идея заключается в том, что ограничение доступа только одним днем в неделю побудит потенциальных пользователей быстрее назначить встречу в реальной жизни - как раз (наверное) на пятницу. Мораль - каким бы абсурдным ограниче лично вам не казалось, кто-то может придумать как извлечь из него выгоду.

Разработка

Apple готовит новый Mac Mini на M4
Тулкиты кодогенерации Android vs iOS
Ускоряем карьерный рост в FAANG
Алгоритмы — самый провальный этап собеседований
Алгоритм Дейкстры — вопросы с собеседований
Cursor, конкурент GitHub Copilot, привлек Cерию A на $60 млн при оценке в $400 млн
Архитектура мобильного приложения в разрезе высоких нагрузок и построения экосистем
Variability, Not Repetition, is the Key to Mastery
Following Industry Trends Can Be a Career Trap
How I Created 175 Fonts Using Rust

Маркетинг

Дейтинг-приложение Thursday работает только по четвергам

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

Полный гайд по тестированию на Flutter. Часть 7: Ошибки, которые усложняют написание тестов
Piloting Kotlin Multiplatform is Easy. Scaling is Hard.

#mobile #dev

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

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

iOS

Apple объявила о новой структуре сборов для приложений в ЕС
Swift Semantic Search — семантический поиск в реальном времени на устройстве
Итоги одного года мобильной разработки с использованием NLP
Combine с нуля — реактивщина это просто
Swift Navigation: Powerful navigation tools for all Swift platforms
Embedded Swift Tutorial - Getting Started (Everything you need to know)
Key Lessons When Moving Towards a Modular Codebase

#ios

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

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

🔥 Начните изучение SwiftUI с Otus. Присоединяйтесь к открытому уроку и узнайте, как создать видеоплеер на SwiftUI и работать с AVPlayer.

👉 На открытом вебинаре «Пишем приложение-видеоплеер на SwiftUI» 13 августа в 20:00 мск мы разберём всё, что нужно знать, чтобы создать простое и функциональное приложение на SwiftUI.

🔆 Вы узнаете:
- как создать простое приложение на SwiftUI;
- как воспроизвести аудио и видео в iOS-приложении;
- как использовать UIView в SwiftUI и взаимодействовать с ним.

👉 Вы научитесь работать с AVPlayer, делать простую верстку с SwiftUI и встраивать UIView в SwiftUI.

Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cz0VLb

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

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

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

Apple объявила о новой структуре сборов для приложений в ЕС

После июньского решения Евросоюза, согласно которому политики Apple и App Store официально нарушают Закон о цифровых рынках, компания Apple объявила о внесении очередных изменений. В частности, эти изменения касаются правил, связанных с размещением разработчиками приложений внешних ссылок  для информирования пользователей об альтернативных способах оплаты.

• Ранее Apple применяла строгие правила, определяющие, как приложениям разрешается размещать ссылки. Требовалось, чтобы ссылка была статической и вела непосредственно на собственный сайт, без каких-либо параметров для идентификации вошедшего пользователя в URL. Это ограничивало возможности приложений напрямую направлять пользователей на веб-страницу, где они могли заплатить за функции в своем аккаунте.
• Согласно сегодняшним изменениям, все эти ограничения теперь отменены. Приложения могут предлагать действующие ссылки с любым количеством динамических URL. Эти ссылки могут вести пользователя куда угодно, в том числе для продвижения других каналов продаж, например альтернативных магазинов приложений. URL-адреса могут содержать параметры, если эти параметры не используются для рекламы или профилирования пользователей.
• Apple также обновила страницу раскрытия информации для пользователей, добавив более дружелюбный дизайн и включив в интерфейс переключатель, позволяющий пользователям в будущем отказаться от просмотра страницы раскрытия информации при переходе по внешним ссылкам на покупки.Core Technology Fee
• Взамен Apple вводит двухуровневую систему сборов для приложений, которые ссылаются на веб-страницы для оплаты. Кроме Core Technology Fee. это теперь плата за первоначальное приобретение (Initial Acquisition Fee) и плата за услуги магазина (Store Services Fee).
• Изменения запутаны — настолько, что даже Spotify пока не совсем понимает, что с ними делать,. Однако компания все же осудила изменения, основываясь на своем нынешнем понимании того, как будет работать новая политика:

На первый взгляд, требуя до 25% за базовое общение с пользователями, Apple в очередной раз грубо игнорирует фундаментальные требования Закона о цифровых рынках (DMA). Европейская комиссия ясно дала понять, что взимание периодической платы за такие базовые элементы, как ценообразование и ссылки, неприемлемо. Мы призываем Комиссию ускорить расследование, ввести ежедневные штрафы и обеспечить соблюдение DMA.

И что: до очередных изменений осталось месяца 2.

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

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

Android

Пишем своё приложение для установки PIN на другие приложения
Что стоит знать о Jetpack Compose: руководство для начинающих
michellbak/building-an-effective-abstraction-layer-for-ui-resources-on-android-1806448caf50">Building an effective abstraction layer for UI resources on Android
sandeepkella23/how-suspend-functions-work-in-kotlin-under-the-hood-in-android-01b1ad641869">How Suspend Functions Work in Kotlin: Under the Hood in Android
MutableState or MutableStateFlow: A Perspective on what to use in Jetpack Compose
ps.sujith/decompile-and-recompile-apk-using-apktool-beginners-guide-4ad03c2c5b8f">Decompile and Recompile APK using APKTOOL : Beginners Guide

#android

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

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

Жутко, но факт: как Uber тестирует платежи в продакшене

Тестирование в проде давно стало предметом для шуток и мемов. А вот, например, Uber там проводит большую часть тестов системы оплаты - одной из важнейших подсистем для приложения такси. Почему так?

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

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

Подробнее в статье.

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