Пока все спят: звуки мошенничества
Приложения с белым шумом способствуют созданию успокаивающей обстановки, помогающей заснуть. Согласно анализу DoubleVerify, за последний год около 200 статей рекомендовали различные приложения для прослушивания белого шума. Однако у растущей популярности таких приложений есть и обратная сторона. По мере того как индустрия потокового аудио расширяется, она привлекает тех, кто хочет использовать ее в своих мошеннических целях. На самом деле, многие приложения с белым шумом используются кражи рекламных долларов.
• За последний год DV выявила две крупные глобальные схемы мошенничества, нацеленные на потоковое аудио. Эти операции фальсифицируют аудиотрафик, используя сложные методы, что приводит к значительным финансовым потерям. На пике своего развития эти схемы в совокупности наносили рекламодателям ежемесячный ущерб на сумму более миллиона долларов, и их невозможно было отловить.
• Например, приложения Deep Sleep и Deep Sleep Kids (уже удаленные Google) разработаны одной и той же компанией и собрали более 10,000 загрузок. Каждое из них имеет рейтинг «E» (для всех) и пятизвездочный рейтинг, согласно данным Google о загрузках. На первый взгляд, эти приложения кажутся безопасными и легитимными. Но DV обнаружила, что они генерируют фальшивые данные, продавая аудиопоказы, которые никогда не воспроизводились.
• Мошенничество на стороне сервера трудно отловить. Но один из способов — посмотреть на модели использования. Эти приложения обычно чаще всего используются в ночное время. Однако мошеннические приложения демонстрируют всплеск использования в дневное время, что не соответствует реальной модели использования.
• По оценкам, ежемесячные потери на каждом приложении составляли не менее $225,000. Учитывая количество таких приложений, общие потери, скорее всего, исчисляются миллионами.
Приложения с белым шумом способствуют созданию успокаивающей обстановки, помогающей заснуть. Согласно анализу DoubleVerify, за последний год около 200 статей рекомендовали различные приложения для прослушивания белого шума. Однако у растущей популярности таких приложений есть и обратная сторона. По мере того как индустрия потокового аудио расширяется, она привлекает тех, кто хочет использовать ее в своих мошеннических целях. На самом деле, многие приложения с белым шумом используются кражи рекламных долларов.
• За последний год DV выявила две крупные глобальные схемы мошенничества, нацеленные на потоковое аудио. Эти операции фальсифицируют аудиотрафик, используя сложные методы, что приводит к значительным финансовым потерям. На пике своего развития эти схемы в совокупности наносили рекламодателям ежемесячный ущерб на сумму более миллиона долларов, и их невозможно было отловить.
• Например, приложения Deep Sleep и Deep Sleep Kids (уже удаленные Google) разработаны одной и той же компанией и собрали более 10,000 загрузок. Каждое из них имеет рейтинг «E» (для всех) и пятизвездочный рейтинг, согласно данным Google о загрузках. На первый взгляд, эти приложения кажутся безопасными и легитимными. Но DV обнаружила, что они генерируют фальшивые данные, продавая аудиопоказы, которые никогда не воспроизводились.
• Мошенничество на стороне сервера трудно отловить. Но один из способов — посмотреть на модели использования. Эти приложения обычно чаще всего используются в ночное время. Однако мошеннические приложения демонстрируют всплеск использования в дневное время, что не соответствует реальной модели использования.
• По оценкам, ежемесячные потери на каждом приложении составляли не менее $225,000. Учитывая количество таких приложений, общие потери, скорее всего, исчисляются миллионами.
👍4🤔2🌭1
Forwarded from AppFiles - Mobile Development
Видео и подкасты за неделю на @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS Ru) SDK и BDUI в Яндекс Пэй и Яндекс Банке•
(iOS En) Master Xcode 16: Essential Navigation Shortcuts for Faster Coding•
(iOS En) Custom TextField Menu Actions•
(iOS En) Optional View Modifiers•
(And Ru) 5 СЕКРЕТНЫХ преимуществ Android эмулятора которые вы не знали!•
(And En) Now in Android: 111 - Android API level and schedule updates, Gemini in Android Studio, Google Play•
(And En) Subtyping Composables•
(And En) How Compose Compiler Plugin Works•
(Crs En) Unpacking Compose Multiplatform Accessibility•
(Dev Ru) Surf QA Meetup: доклады о моках в автотестах, человеческом факторе QA и работе Device Holder•
(Dev Ru) ОС Аврора 5 глазами мобильного разработчика. Разработка и функциональность•
(Dev Ru) Мобильная ферма: тесты мобильных приложений без телефона и эмулятора•
(Dev Ru) AIOps — grafana, observability, aiops, ai•
(Dev En) Build and Deploy a RAG Chatbot•
(Dev En) AI Foundations Course – Python, Machine Learning, Deep Learning, Data Science#ios #android #mobile #video
Поможет ли новая архитектура React Native отобрать лидерство у Flutter в кроссплатформенной разработке?
Возвращаясь к росту React Native - интересное исследование AppFigures.
• Согласно таблице популярности SDK от AppFigures, React Native сейчас занимает первое место среди неродных фреймворков в App Store и второе место в Google Play после нативных альтернатив (Swift и Kotlin).
• По данным SDK-анализа, чуть менее 7% всех приложений, выпущенных на данный момент в 2024 году (январь-октябрь), используют React Native. Соперник Flutter составляет 11%.
• За последние несколько лет доля обоих продуктов выросла, в то время как доля всех остальных конкурентов сократилась.
• Доля React Native выросла с 4.73% в 2022 году до 6.75% в 2024 году, а Flutter — с 10.15% до 11.07%, соответственно.
• За последние 30 дней приложения, использующие React Native и Flutter, принесли 570 миллионов долларов чистой прибыли Какой фреймворк принес больше дохода? К удивлению, эти два фреймворка оказались почти равны. На долю React Native пришлось $287 млн, а на долю Flutter — $283 млн.
И что: новая архитектура сосредоточена на производительности, и данные о росте наводят на мысль, что все больше разработчиков находит это обновление интересным. Сможет ли RN обогнать Flutter? Такими темпами, видимо не скоро. И все же принятие RN очевидно ускоряется, в то время как Flutter замедляется. Следующие несколько лет будут в этом плане интересными.
Возвращаясь к росту React Native - интересное исследование AppFigures.
• Согласно таблице популярности SDK от AppFigures, React Native сейчас занимает первое место среди неродных фреймворков в App Store и второе место в Google Play после нативных альтернатив (Swift и Kotlin).
• По данным SDK-анализа, чуть менее 7% всех приложений, выпущенных на данный момент в 2024 году (январь-октябрь), используют React Native. Соперник Flutter составляет 11%.
• За последние несколько лет доля обоих продуктов выросла, в то время как доля всех остальных конкурентов сократилась.
• Доля React Native выросла с 4.73% в 2022 году до 6.75% в 2024 году, а Flutter — с 10.15% до 11.07%, соответственно.
• За последние 30 дней приложения, использующие React Native и Flutter, принесли 570 миллионов долларов чистой прибыли Какой фреймворк принес больше дохода? К удивлению, эти два фреймворка оказались почти равны. На долю React Native пришлось $287 млн, а на долю Flutter — $283 млн.
И что: новая архитектура сосредоточена на производительности, и данные о росте наводят на мысль, что все больше разработчиков находит это обновление интересным. Сможет ли RN обогнать Flutter? Такими темпами, видимо не скоро. И все же принятие RN очевидно ускоряется, в то время как Flutter замедляется. Следующие несколько лет будут в этом плане интересными.
🤡13👍6❤2
iOS
• LNPopupUI — View как попапы
• Искрящаяся переливающаяся кнопка с помощью Metal и SwiftUI
• Путь одного iOS-приложения
• Font modifiers in SwiftUI
• Using ViewThatFits to Create a More Accessible List Cell in SwiftUI
• Testing the Untestable
• Writing a chess app
• AnchoredRelativeFormatStyle: The Hidden Replacement for Date RelativeFormatStyle
• Automatic Trait Tracking
#ios
• LNPopupUI — View как попапы
• Искрящаяся переливающаяся кнопка с помощью Metal и SwiftUI
• Путь одного iOS-приложения
• Font modifiers in SwiftUI
• Using ViewThatFits to Create a More Accessible List Cell in SwiftUI
• Testing the Untestable
• Writing a chess app
• AnchoredRelativeFormatStyle: The Hidden Replacement for Date RelativeFormatStyle
• Automatic Trait Tracking
#ios
Android
• Самые трудные вопросы на собеседовании, которые вам задавали — Обсуждение на Reddit
• Lumolight — современный фонарик
• 5 СЕКРЕТНЫХ преимуществ Android эмулятора которые вы не знали!
• Лучшая работа с Android Studio: 5 советов
• Talaiot — отслеживания времени выполнения задач в Gradle
• Как разобрать и собрать обратно apk под Windows
• Как силами мобильных разработчиков автоматизировать процесс разработки
• Inspektify got even better
• Putting the Genie in the bottle
• Credential Manager
• Comparing SupervisorScope with viewModelScope
• Centered Slider in Jetpack Compose
• Skipping the invocation of intermediate composables
• Dealing with Android’s peculiar bugs as an app developer
#android
• Самые трудные вопросы на собеседовании, которые вам задавали — Обсуждение на Reddit
• Lumolight — современный фонарик
• 5 СЕКРЕТНЫХ преимуществ Android эмулятора которые вы не знали!
• Лучшая работа с Android Studio: 5 советов
• Talaiot — отслеживания времени выполнения задач в Gradle
• Как разобрать и собрать обратно apk под Windows
• Как силами мобильных разработчиков автоматизировать процесс разработки
• Inspektify got even better
• Putting the Genie in the bottle
• Credential Manager
• Comparing SupervisorScope with viewModelScope
• Centered Slider in Jetpack Compose
• Skipping the invocation of intermediate composables
• Dealing with Android’s peculiar bugs as an app developer
#android
AppTractor
Самые трудные вопросы на собеседовании, которые вам задавали — Обсуждение на Reddit
Вы согласны или не согласны с тем, что в Kotlin мы можем заменить паттерн Строитель на классы данных?
👍2
На Reddit очередное обсуждение - самые трудные вопросы на собеседовании, которые вам задавали. В общем-то про Android (от разработки собственного DI-фреймворка до того, почему стоит использовать MVVM), но есть и выдающиеся вроде “сейчас 16:55 пятницы, большинство ваших коллег разъехались по домам на длинные выходные, а ваш босс ушел в отпуск, но доступен только в экстренных случаях. Сервер падает. Что вы будете делать?”. А какие самые сложные вопросы были у вас на собеседовании? Поделитесь в комментариях, дополним статью 😊
Разработка
• Сортировка слиянием — Вопросы с собеседований
• SDK и BDUI в Яндекс Пэй и Яндекс Банке
• Surf QA Meetup: доклады о моках в автотестах, человеческом факторе QA и работе Device Holder
• ОС Аврора 5 глазами мобильного разработчика. Разработка и функциональность
• Мобильная ферма: тесты мобильных приложений без телефона и эмулятора
• AIOps — grafana, observability, aiops, ai
• Обзор Apple Mac Mini M4: маленькое чудо
• Mistral запустил новый API для модерации контента
• Programming Languages That Blew My Mind
• Algorithms we develop software by
Маркетинг и монетизация
• В AppMetrica появилась возможность обнаруживать фрод
• CapCut поглощает рынок видеоредакторов
• Пока все спят: звуки мошенничества
Кроссплатформа
• Поможет ли новая архитектура React Native отобрать лидерство у Flutter в кроссплатформенной разработке?
• Flutter Push-уведомления, том числе в Web
• Extension Shadowing for Actual Declarations in KMP
• Mix Native iOS Views in Compose Multiplatform With Touchlab's New Library
• Developing iOS & Android Home Screen Widgets in Flutter
#mobile #dev
Разработка
• Сортировка слиянием — Вопросы с собеседований
• SDK и BDUI в Яндекс Пэй и Яндекс Банке
• Surf QA Meetup: доклады о моках в автотестах, человеческом факторе QA и работе Device Holder
• ОС Аврора 5 глазами мобильного разработчика. Разработка и функциональность
• Мобильная ферма: тесты мобильных приложений без телефона и эмулятора
• AIOps — grafana, observability, aiops, ai
• Обзор Apple Mac Mini M4: маленькое чудо
• Mistral запустил новый API для модерации контента
• Programming Languages That Blew My Mind
• Algorithms we develop software by
Маркетинг и монетизация
• В AppMetrica появилась возможность обнаруживать фрод
• CapCut поглощает рынок видеоредакторов
• Пока все спят: звуки мошенничества
Кроссплатформа
• Поможет ли новая архитектура React Native отобрать лидерство у Flutter в кроссплатформенной разработке?
• Flutter Push-уведомления, том числе в Web
• Extension Shadowing for Actual Declarations in KMP
• Mix Native iOS Views in Compose Multiplatform With Touchlab's New Library
• Developing iOS & Android Home Screen Widgets in Flutter
#mobile #dev
AppTractor
Самые трудные вопросы на собеседовании, которые вам задавали — Обсуждение на Reddit
Вы согласны или не согласны с тем, что в Kotlin мы можем заменить паттерн Строитель на классы данных?
👍4
iOS
• Начинаем работу с LiteRT (Tensorflow Lite)
• Apple готовит два новых продукта на 2026
• Mockolo — эффективный генератор моков для Swift
• iOS Developer Toolset to boost productivity
• Introducing Swift Testing. Parameterized Tests.
• How to identify data in Lists and ForEach in SwiftUI
• Automate Apple app code signing using fastlane match
• The End of Singleton? Why Swift 6 Actors Are the Future of iOS Development
#ios
• Начинаем работу с LiteRT (Tensorflow Lite)
• Apple готовит два новых продукта на 2026
• Mockolo — эффективный генератор моков для Swift
• iOS Developer Toolset to boost productivity
• Introducing Swift Testing. Parameterized Tests.
• How to identify data in Lists and ForEach in SwiftUI
• Automate Apple app code signing using fastlane match
• The End of Singleton? Why Swift 6 Actors Are the Future of iOS Development
#ios
AppTractor
Начинаем работу с LiteRT (Tensorflow Lite)
Вот как можно переложить такую ментальную задачу на компьютер.
👍1
Android
• Everything you need to know about Android on Raspberry Pi
• Running Android on Amazon EKS
• The two best ways to secure your API keys in Android projects
• Android Screenshot Testing — Boosting your CI pipeline
• Exploring the Secrets of Dispatchers Default and IO in Kotlin Coroutines
• Modeling ViewModel State in Android: A Guide to Clean, Scalable Patterns
• How to force update (& test) your Android app using Google's in-app update library
#android
• Everything you need to know about Android on Raspberry Pi
• Running Android on Amazon EKS
• The two best ways to secure your API keys in Android projects
• Android Screenshot Testing — Boosting your CI pipeline
• Exploring the Secrets of Dispatchers Default and IO in Kotlin Coroutines
• Modeling ViewModel State in Android: A Guide to Clean, Scalable Patterns
• How to force update (& test) your Android app using Google's in-app update library
#android
Medium
Everything you need to know about Android on Raspberry Pi
4 Reasons you should use Android on Raspberry Pi. Where to get it, which one to choose?
❤1👍1
По слухам, Apple планирует выпустить в 2026 два новых продукта. Во-первых, это умная камера для дома. Во-вторых, AirPods с функциями, более ориентированными на здоровье. И если с наушниками все более или менее понятно (я давно говорю, что потенциал AirPods явно недооценен), то вот про с камерой все сложно. Зачем она нужна и что будет делать исключительно лучше аналогов непонятно. Впрочем, если слухи верны, то можно уже начинать готовиться. Как ваше приложение может использовать умную камеру?
Разработка
• Алгоритмы, с помощью которых мы разрабатываем программное обеспечение
• Синхронизация звука и видео. Взгляд дилетанта
• Migrating billions of records: moving our active DNS database while it’s in use
• How I ship projects at big tech companies
Маркетинг и монетизация
• Статистика: доходы Gardenscapes
• What budgeting apps, Peloton, and Duolingo have in common
Кроссплатформа
• North Korean hackers create Flutter apps to bypass macOS security
• Cozy Data - A Swift-inspired Persistent Data Solution for Flutter
• Discussion: MVVM pattern for Flutter apps
#mobile #dev
Разработка
• Алгоритмы, с помощью которых мы разрабатываем программное обеспечение
• Синхронизация звука и видео. Взгляд дилетанта
• Migrating billions of records: moving our active DNS database while it’s in use
• How I ship projects at big tech companies
Маркетинг и монетизация
• Статистика: доходы Gardenscapes
• What budgeting apps, Peloton, and Duolingo have in common
Кроссплатформа
• North Korean hackers create Flutter apps to bypass macOS security
• Cozy Data - A Swift-inspired Persistent Data Solution for Flutter
• Discussion: MVVM pattern for Flutter apps
#mobile #dev
AppTractor
Apple готовит два новых продукта на 2026
По данным Минг-Чи Куо, основанным на анализе цепочек поставок, поставщик Apple под названием Goertek получил заказы на два продукта, которые должны появиться в 2026 году.
Теперь вы можете поделится новым контентом и улучшениями вашего приложения или игры для рассмотрения на предмет фичеринга в App Store с помощью Featuring Nominations прямо в App Store Connect. Подайте заявку на участие, чтобы рассказать команде о запуске нового приложения, новом содержимом или добавленной функциональности. Если ваше приложение будет представлено на вкладке «Сегодня», вы также получите уведомление в приложении App Store Connect.
Кроме того, вы можете рекламировать самые важные моменты своего приложения или игры — запуск, выход новой версии или размещение в App Store — с помощью готовых маркетинговых ресурсов. Используйте приложение App Store Connect, чтобы получить разработанные Apple ассеты и поделиться ими со своими социальными сетями.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
iOS
• Почему xcodebuild работает медленнее, чем Xcode?
• Apple работает над «настенным планшетом с искусственным интеллектом»
• Apple is Killing Swift
• Advanced Swift Concurrency
• So how does this whole @preconcurrency thing work?
• What on earth is going on with awakeFromNib?
#ios
• Почему xcodebuild работает медленнее, чем Xcode?
• Apple работает над «настенным планшетом с искусственным интеллектом»
• Apple is Killing Swift
• Advanced Swift Concurrency
• So how does this whole @preconcurrency thing work?
• What on earth is going on with awakeFromNib?
#ios
AppTractor
Почему xcodebuild работает медленнее, чем Xcode?
Если вы, как и я, заметили, что xcodebuild работает медленно, не волнуйтесь. Вы не один такой.
👍1
Android
• LibreSudoku — судоку на Kotlin, Jetpack Compose и Material3
• Emulating classes with functions in Kotlin for maximum performance
• Google Maps in Jetpack Compose: Circles
• Mastering runCatching in Kotlin: How to Avoid Coroutine Cancellation Issues
• Leak detection using UI tests
• Top 5 Extension Functions Every Jetpack Compose Developer Should Have
• Android System Design Interview Questions and Answers
#android
• LibreSudoku — судоку на Kotlin, Jetpack Compose и Material3
• Emulating classes with functions in Kotlin for maximum performance
• Google Maps in Jetpack Compose: Circles
• Mastering runCatching in Kotlin: How to Avoid Coroutine Cancellation Issues
• Leak detection using UI tests
• Top 5 Extension Functions Every Jetpack Compose Developer Should Have
• Android System Design Interview Questions and Answers
#android
AppTractor
LibreSudoku — судоку на Kotlin, Jetpack Compose и Material3
LibreSudoku — приложение для игры в судоку с открытым исходным кодом, разработанное для максимально удобного использования и кастомизации. Создано с помощью Jetpack Compose и Material3.
👍3
Надоел весь ваш этот код - ухожу в высокую журналистику ☺️ Открыл новый канал “Хорошие новости” - про, собственно, хорошие и интересные новости. Подписывайтесь, рекомендуйте, хвалите (ну или критикуйте).
Разработка
• The github plugin my coworkers asked me not to write
• 5 Non-LLM Software Trends To Be Excited About
Маркетинг и монетизация
• Улучшения в фичеринге в App Store
Кроссплатформа
• Design System from scratch in Flutter
• Mastering Detox for React Native
• How to Use Flutter Secure Storage to Keep Your App’s Data Safe
Разработка
• The github plugin my coworkers asked me not to write
• 5 Non-LLM Software Trends To Be Excited About
Маркетинг и монетизация
• Улучшения в фичеринге в App Store
Кроссплатформа
• Design System from scratch in Flutter
• Mastering Detox for React Native
• How to Use Flutter Secure Storage to Keep Your App’s Data Safe
👍6❤3
В Google знают, насколько важны стабильность, надежность и производительность Android-эмулятора для повседневной работы Android-разработчиков. Выслушав ценные отзывы о стабильности, надежности и производительности, команда Android Studio на шесть месяцев отказалась от работы над крупными функциями эмулятора и начала инициативу под названием Project Quartz. Эта инициатива состояла из нескольких рабочих потоков, направленных на уменьшение количества сбоев, ускорение времени запуска, устранение ошибок и создание более эффективных способов обнаружения и предотвращения проблем в будущем.
Ключевая цель проекта Quartz заключалась в уменьшении количества сбоев эмулятора, которые могут расстраивать и блокировать разработчиков, снижая их производительность. В компании сосредоточились на устранении проблем, вызывающих сбои и зависания бэкенда и пользовательского интерфейса, обновили UI-фреймворк, фреймворк гипервизора и графические библиотеки, а также устранили технический долг.
• В результате в последней стабильной версии Android Studio наблюдается на 30% меньше сбоев, о которых сообщают разработчики, согласившиеся делиться информацией о сбоях. Наряду с дополнительным сквозным тестированием это означает более стабильную, надежную и качественную работу с меньшим количеством прерываний при использовании эмулятора Android для тестирования ваших приложений.
• Команда также реализовала ряд мер по повышению качества релизов, в том числе увеличили количество и частоту сквозных, автоматизированных и интеграционных тестов на macOS, Microsoft Windows и Linux. Сейчас в процессе постсабмита проводится более 1100 сквозных тестов (по сравнению с 500 тестами в прошлом) на всех поддерживаемых операционных системах.
• В ходе проекта Quartz сократили количество открытых проблем на 43.5% - с 4 605 до 2 605. 17% из них были активно исправлены в ходе проекта Quartz, а остальные были закрыты как устаревшие или ранее исправленные.
Обновленная версия эмулятора уже доступна в последней версии Android Studio.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Я уже сравнивал доходы двух платформ в категории Образование в США и выяснилось, что распределение доходов между App Store и Google Play там составляет примерно 82 на 18%. Посмотрим на распределение доходов той же категории в другой стране, и для примера возьмем Бразилию, один из быстрорастущих рынков приложений в мире и в Южной Америке.
• В целом Топ-10 приложений в двух магазинах за сентябрь по данным AppMagic заработали $2 017 072. Для сравнения, в сентябре 2023 года этот показатель — $1 942 200. Это примерно в
• Всего в сентябре Топ-10 приложений получили 2 533 710 загрузок.
• В данном случае Duolingo тоже получает львиную долю всего дохода в категории — 41%.
• Однако доходы по платформам распределяются
И что: Android на развивающихся рынках вполне конкурентоспособен. Да, денег там не так много, но вполне хватает. Традиционно поставьте 👍, если хотите продолжения.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍49🤡2🍌1
iOS
• Разбираем iOS-приложение: код, сборка, статические и динамические библиотеки, компиляция, запуск
• Detecting hand pose with the Vision framework
• The Composable Architecture - New Project Setup in SwiftUI using XCode 16 and Swift Testing
• SwiftUI Tutorials: Building a Relaxing Sudoku App from Scratch
#ios
• Разбираем iOS-приложение: код, сборка, статические и динамические библиотеки, компиляция, запуск
• Detecting hand pose with the Vision framework
• The Composable Architecture - New Project Setup in SwiftUI using XCode 16 and Swift Testing
• SwiftUI Tutorials: Building a Relaxing Sudoku App from Scratch
#ios
Хабр
Разбираем iOS-приложение: код, сборка, статические и динамические библиотеки, компиляция, запуск
Часть первая: сущности Хотел бы начать с кода. Я разделяю код на 4 категории: «Исходный код» (Source на иллюстрации ниже) — код, на котором мы с вами пишем: Swift, Objective-C, C++. Промежуточный...
👍1🤔1
Android
• Wave Progress Compose — волновой прогресс-бар
• Моделирование состояния ViewModel в Android: чистый, масштабируемый паттерн
• Улучшение стабильности и производительности эмулятора Android
• Как реализовать методы скроллов через Appium для Android-приложений
• Как поднять инфраструктуру для запуска автотестов Android в облаках
• Animating the Airbnb Logo in Jetpack Compose
• Building consistency at scale: Our journey with Compose Design System
• Building a Simple Camera2 API App with Jetpack Compose
#android
• Wave Progress Compose — волновой прогресс-бар
• Моделирование состояния ViewModel в Android: чистый, масштабируемый паттерн
• Улучшение стабильности и производительности эмулятора Android
• Как реализовать методы скроллов через Appium для Android-приложений
• Как поднять инфраструктуру для запуска автотестов Android в облаках
• Animating the Airbnb Logo in Jetpack Compose
• Building consistency at scale: Our journey with Compose Design System
• Building a Simple Camera2 API App with Jetpack Compose
#android
AppTractor
Wave Progress Compose — волновой прогресс-бар
Wave Progress Compose — волновой прогресс-бар, написанный на Jetpack Compose. Компонент можно обернуть в любой Jetpack View (здесь он обернут в круглую карточку). Вы можете легко настроить различные свойства прогресс-бара, включая частоту, амплитуду, направление…
Нашел интересную статью про моделирование состояния ViewModel. Два наиболее популярных способа - обычный класс данных и Sealed интерфейс. Автор пишет, что у обоих есть большие недостатки в масштабируемости и управляемости, и он предлагает третий - класс данных, обернутый Sealed интерфейсом. Мораль там в самом конце: “вместо того чтобы придерживаться какого-то одного паттерна, полезно использовать сильные стороны нескольких шаблонов и смешивать их вместе”. Это, очевидно, относится не только к моделирование состояния.
Разработка
• AI Makes Tech Debt More Expensive
Маркетинг и монетизация
• Сравнение доходов App Store и Google Play в категории Образование в Бразилии
Кроссплатформа
• Optimizing Flutter Apps with RepaintBoundary
• This needs to stop (Flock)
• How to Monitor Internet Connection Continuously in Flutter: A Step-by-Step Guide
Разработка
• AI Makes Tech Debt More Expensive
Маркетинг и монетизация
• Сравнение доходов App Store и Google Play в категории Образование в Бразилии
Кроссплатформа
• Optimizing Flutter Apps with RepaintBoundary
• This needs to stop (Flock)
• How to Monitor Internet Connection Continuously in Flutter: A Step-by-Step Guide
AppTractor
Моделирование состояния ViewModel в Android: чистый, масштабируемый паттерн
В этой статье мы рассмотрели различные подходы к моделированию состояния ViewModel в Android. Вместо того чтобы придерживаться какого-то одного паттерна, полезно использовать сильные стороны нескольких паттернов и смешивать их вместе.
👍3
Forwarded from AppFiles - Mobile Development
Видео и подкасты за неделю на @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS En) The Composable Architecture (TCA) - New Project Setup in SwiftUI using XCode 16 and Swift Testing•
(iOS En) SwiftUI Navigation Stack Hero Animation - iOS 17 & 18•
(iOS En) Google Engineer Explains How to Integrate Gemini AI in iOS•
(iOS En) Reading and Parsing CSV Files in Swift•
(iOS En) Github Copilot for Xcode: Let's Explore and Discover•
(iOS En) Mediator Pattern in Swift: Explaining a Real-World Example from My Job•
(iOS En) Expandable Custom Slider•
(And En) Ultra HDR images | Android Build Time•
(And En) Previewing the Unpreviewable - Placeholder Previews in Compose•
(And En) How to Create Material3 List Items With THIS Composable•
(And En) Exploring Android Trunk-Stable & Aconfig•
(And En) Fun with Function Types in Kotlin•
(Crs En) Flutter Full Stack Tutorial – Spotify Clone w/ MVVM Architecture, Python, FastAPI, Riverpod•
(Crs En) Mix Native iOS Views in Compose Multiplatform With Touchlab's New Library•
(Dev Ru) Как начинающему программисту получить первый оффер•
(Dev Ru) Релокация в США, часть 1: Безопасность, оружие, визы и медицина•
(Anl Ru) А/В-тесты на коленке#ios #android #mobile #video
Моделирование собеседований
Новый еженедельный дайджест со всеми материалами за неделю — разбираем iOS-приложение и сенсорный пин-пад, моделируем состояния ViewModel в Android и начинаем работу с LiteRT, самые трудные вопросы с собеседований, о зацикливании рекомпозиции в Jetpack Compose, алгоритмы, с помощью которых мы разрабатываем программное обеспечение и многое другое. Подключайтесь!
Новый еженедельный дайджест со всеми материалами за неделю — разбираем iOS-приложение и сенсорный пин-пад, моделируем состояния ViewModel в Android и начинаем работу с LiteRT, самые трудные вопросы с собеседований, о зацикливании рекомпозиции в Jetpack Compose, алгоритмы, с помощью которых мы разрабатываем программное обеспечение и многое другое. Подключайтесь!
👍3