apptractor | Unsorted

Telegram-канал apptractor - Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

10992

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

Subscribe to a channel

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Используйте Gemini в своих приложениях для Android
Kotlin под капотом: как избавится от рекурсии
MVI Architecture with Jetpack Compose
Leverage Gemini in your Android apps
Optimizing Mobile App Performance
dugguRK/kotlin-mutex-a-comprehensive-guide-5771a3f59713">Kotlin Mutex: A Comprehensive Guide

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Google открыл доступ к Gemini Pro

На прошлой неделе Google представил свою самую функциональную ИИ-модель - Gemini. Gemini является мультимодальной - она может принимать как текстовые, так и графические данные. Компания представила разработчикам Android возможность использовать самую маленькую модель Gemini Nano на устройствах через AICore. А сегодня Google представил разработчикам Android новые возможности доступа к модели Gemini Pro, которая работает вне устройства, в центрах обработки данных Google.

1. Gemini Pro доступна через Gemini AP. Чтобы упростить интеграцию Gemini Pro, вы можете использовать Google AI SDK, клиентский SDK для Android.

2. Google AI Studio предоставляет разработчикам упрощенный способ интеграции модели Gemini Pro, создания промптов, ключей API и легкого превращения идей в приложения с искусственным интеллектом. осле разработки подсказки в Google AI Studio вы можете просто нажать на действие "Получить код", чтобы сгенерировать фрагмент кода на языке Kotlin, и начать интеграцию Gemini уже сегодня, используя Google AI SDK для Android.

3. В Android Studio есть новый шаблон проекта для разработчиков, чтобы они могли сразу же начать работу с Google AI SDK для Android.

И что: крайне просто и приятно, ждем решения от Apple.

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Адвент-календарь MonkeyUser на 2023 год

Все в пост не влезло, поэтому отдельными картинками тут.

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Amazon выпустил AWS SDK для Kotlin
Compose Preference: экран настроек в Material 3
sedakundakitchen/unit-testing-kotlin-flow-emissions-86ae7cc32333">Unit testing Kotlin Flow emissions
Zooming out Twilio Migration
alex.hrindii/how-to-share-and-publish-detekt-config-14e816d6c8ae">How to share and publish Detekt config?
satish24sp/firebase-dynamic-link-deprecation-and-its-alternates-81d72e33734">Firebase dynamic link deprecation and its alternates
How we tested a Google Play application

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Вышли первые Mobile Interview — неформальные беседы про мобильную разработку в Яндексе

Ребята из разных команд мобильной разработки Яндекса рассказывают, какие задачи решают каждый день и почему им нравится эта работа. Первые выпуски уже можно посмотреть на YouTube-канале Yandex for Mobile:

🔸 В первом выпуске обсудили инфраструктуру Такси. Как и зачем собирать команду мобильной инфраструктуры приложения и чем ребята занимаются на ежедневной основе.

🔸 Во втором выпуске разбирались в разработке Карт. Какие задачи ребята решают, как адаптируются под сложности определения геолокации, развивается ли MapKit, как уживаются приложения Карт и Навигатора.

🔸 В третьем выпуске беседовали о разработке под iOS. Как мы делали браузер под iOS, легко ли переключаться между платформами и под какую проще разрабатывать, что нужно сделать, чтобы завоевать авторитет в большой команде, и в чём заключается специфика разработки браузеров.

🔸 В четвёртом выпуске поговорили с деврелом. Что за люди делают мероприятия для мобильных разработчиков, как организовать большую конференцию и не сойти с ума, чем ещё занимаются DevRel-команды и зачем простым разработчикам связываться с ними.

Смотрите интервью и подписывайтесь на YandexforMobile?utm_source=tg&utm_medium=social&utm_campaign=yfm&utm_content=apptractor&erid=2VtzqvQT9pv">канал — скоро там выйдет пятый выпуск Mobile Interview.

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

У Nielsen Norman Group вышла прекрасная статья о том, нужно ли вам создавать отдельное приложение для умных часов. В целом этот подход применим ко всем продуктам, но тут дело еще усугубляется тем, что, по данным исследования, 80% приходилось на встроенные в устройство приложения, такие как сообщения, трекеры активности и таймеры. Еще процентов 15 на музыку. А все остальное - ВООБЩЕ никому не нужно. Подход же - не создавайте приложение для умных часов только потому, что можете. Тратьте на это время и ресурсы только в том случае, если вы уверены, что это предлагает уникальную ценность.

Разработка

Стоит ли создавать приложение для умных часов?
Операционные системы — Как это работает
Как зарабатывать на обучении в IT?
TypeScript убил JavaScript?
Apple выпустила библиотеки машинного обучения для Apple Silicon
Как я пытался облегчить работу в поликлинике
Exploring accessibility regulations and guidelines
Processing Payments in Firebase with Stripe
Navigation patterns in mobile applications. How to make the right choice?
rohitverma_87831/my-interview-experience-at-google-afc1080df175">My Interview Experience at Google

Маркетинг

Лучшая мобильная игра в Game Awards 2023
Pimento использует ИИ для превращения брифов в креативные мудборды

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

PWA vs. нативные приложения: когда и как выбрать?
lordjadawin/the-anatomy-of-dart-code-analysis-understanding-key-entities-ba75cf20d8ba">The Anatomy of Dart Code Analysis: Understanding Key Entities
Implementing Blurred Bottom TabBar in React Native
Separation of Concerns in Flutter Applications
Flutter Deep Linking: The Ultimate Guide

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Опубликованы SDK, для которых Apple будет требовать подпись
Apple заблокировала Beeper Mini «в целях безопасности»
Откройте для себя Journaling Suggestions API
Swift 30 Projects: 30 учебных проектов для изучающих iOS-разработку
Разработчики будут бесплатно получать 25 часов Xcode Cloud в месяц
Marin's Side Projects 2023
How to customize the macOS About Panel in SwiftUI
AsyncPhoto for displayng large photos in SwiftUI
henribredtprivat/create-an-ios-share-extension-with-custom-ui-in-swift-and-swiftui-2023-6cf069dc1209">Create an iOS Share Extension with custom UI in Swift and SwiftUI (2023)
The Complete Guide to JSON Web Tokens (JWT) Authentication in iOS
Is iOS programming hard now?
A Guide to Geofences in SwiftUI

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Идеальная основа для рефлексии

Собрал новый еженедельный дайджест - про iOS, Android, кроссплатформу и все вокруг. Поставьте 👍 и поделитесь с коллегами! Еще у меня есть канал IT Insights, где новости и статьи про код, технологии и все самое интересное, возможно и за пределом мобайла. Вот, например, симулятор ядерного реактора - всего три ручки, а сколько удовольствия!

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

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

(iOS En) How To Create A Tic Tac Toe Game in Xcode 15 (SwiftUI)
(iOS En) Interactive Widgets – Intents
(iOS En) SwiftUI Complex Hero Animation With Synchronized ScrollViews
(iOS En) Create your first app with SwiftUI and SwiftData
(iOS En) Swift Data Many to Many relationships
(iOS En) How To Create And Use A Card View in Xcode 15 (SwiftUI)
(And Ru) Как интегрировать Dynamic Features в Android-приложение
(And En) Enhancing Jetpack Compose app performance
(And En) Latest Updates to Google Play, New APIs in Jetpack Compose, and more dev news!
(And En) mutableStateOf() VS. mutableIntStateOf() - Auto-Boxing Explained
(And En) Is it okay to use runBlocking?
(Crs Ru) PWA vs. нативные приложения: когда и как выбрать?
(Crs En) Flutter GameDev with Casual Games Toolkit & Flame
(Dev Ru) Операционные системы — Как это работает
(Dev Ru) Как зарабатывать на обучении в IT?
(Dev Ru) TypeScript убил JavaScript?
(Dev En) MLOps Course – Build Machine Learning Production Grade Projects

Конечно же поставьте 👍 и поделитесь подборкой!

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Поваренная книга SwiftUI: создание кастомного модификатора представления
ColorfulX: градиенты с Metal
sharaev_vl/handling-new-enum-cases-in-swift-unknowncasedecodable-protocol-08e54fa37aef">Handling new Enum cases in Swift. UnknownCaseDecodable protocol
Distributing a Swift Macro using CocoaPods
GPT's specifically for Apple Frameworks
Mastering in SwiftUI
swift2931/stop-abusing-value-type-7cf4f64f2015">Stop abusing value type

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Только что Google анонсировал Gemini, самую “мощную модель компании”. Как обычно “ничего непонятно, но очень интересно” (С). Если серьезно, то (кажется) это большая языковая модель, которая была разработана с учетом гибкости, поэтому она может работать в любых системах — от центров обработки данных до мобильных устройств. Она была оптимизирована для трех различных размеров: Ultra, Pro и Nano. Ultra должна работать на серверах, а Nano, соответственно, на смартфонах. В первом варианте это Bart, в нано - резюмирование текста, контекстные умные ответы, расширенная корректура и исправление грамматики. Снаружи в Android 14 все оборачивается в Android AICore, этот SDK управляет моделями, режимами выполнения, функциями безопасности и многим другим, упрощая работу по внедрению ИИ в ваши приложения. Уже есть программа раннего доступа, так что можно попробовать.

Разработка

Мода на плоский дизайн наконец-то прошла?
Microsoft открыла Terminal Chat
«Яндекс» открыл доступ к YandexGPT API для всех пользователей в режиме превью
Are your engineering “best practices” just developer dogmas?
Your GitHub pull request workflow is slowing everyone down

Маркетинг

Beeper Mini — новое приложение для переписки в iMessage с Android (и оно работает)
Как продвигать приложение детской одежды в VK Рекламе и Яндекс Директе - кейс Gulliver Market и Rocket10
Discord провел редизайн мобильного приложений с акцентом на сообщения
How to Build a Personal Brand as a Developer

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

mrclemrkz/why-flutter-is-not-the-best-mobile-app-development-tool-3d2d7d833331">Why Flutter is “NOT” the Best Mobile App Development Tool
How to implement push notifications in Kotlin Multiplatform
Practical Functional Programming in Dart and Flutter
mofeejegi/calling-platform-specific-dependencies-in-kotlin-multiplatform-69dbc9a841a2">Calling Platform-Specific Dependencies in Kotlin Multiplatform

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Swift: Simulating Inheritance in structs with the Power of enums
Are You Truly Adopting MVVM? Or Just a Badly Shaped MVP?
SFSafariViewController in SwiftUI: Open webpages in-app
Mastering MapKit in SwiftUI. Customizations.
7 Steps to Add Chat to a SwiftUI App Using Firebase

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Первый стабильный релиз Flutter 1.0 вышел 5 лет назад, с чем платформу и поздравляем. За это время он охватил все платформы, обзавелся игровым движком и многим остальным и стал основным выбором для настоящей кроссплатформенной разработки. Не все так безоблачно - Flutter начал терять руководителей, его начал поджимать KMP, но в целом он уже вышел на траекторию нормального развития, так что, кажется, будущее у него вполне отличное.

Разработка

Amazon выпустил Q, своего помощника с искусственным интеллектом
Bumble For Friends использует ИИ для написания первого сообщения
Animate Anyone приближает создание видео-дипфейков
Интернационализация от i до n: как мы переводим интерфейсы в Фантехе Яндекса
How psychology design products that win customers
Data Quality Score: The next chapter of data quality at Airbnb

Маркетинг

Дизайн АБ тестов
France in three charts: Installs, sessions, and retention rates

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

Handling Asynchronous Data in Flutter with Generic Classes
e.yram/building-a-spreadsheet-interface-in-flutter-a-quick-guide-976fee9c6d26">Building a Spreadsheet Interface in Flutter: A Quick Guide

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Использование on-demand ресурсов для безопасного хранения ключей API в iOS-приложениях
IMSwitch: графические переключатели для SwiftUI
Testing private functions in Swift
melissazm/future-proofing-your-projects-for-swift-6-a-comprehensive-guide-1ccb1b90abd1">Future-Proofing Your Projects for Swift 6: A Comprehensive Guide
SwiftUI for Jetpack Compose developers - State
Interactive Widgets – Intents
jpmtech/easily-change-the-language-of-the-simulator-to-test-your-app-0fd980596467">Easily Change the Language of the Simulator to Test Your App

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Вышла стабильная версия Android Studio Hedgehog
Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии
Разработка UI на Jetpack Compose
Idiomatic Kotlin: Merge Two Strings Alternately + Benchmarks
Implementing an animated column section header using Jetpack Compose
Improving NordVPN’s Android performance using the Compose Compiler plugin
Koin, Ktor & Paging in KMM
Global Google Developer Experts Share Their Favorite Tools and Advice for New Developers
Custom Pull to Refresh in Jetpack Compose

#android
First look at AndroidX Bluetooth

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Aespa: фото и видео в 2 строчки кода
SwiftUI: Разбираемся с identity на примере переходов
Как добавить drag and drop в ваше приложение
Modern iOS Navigation Patterns
knoo/whats-new-in-uikit-bc8a98090cfc">What’s new in UIKit
Mastering MapKit in SwiftUI. Camera.
Implementing Drag Gestures In Xcode 15 (SwiftUI)

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

🚀 Мои друзья из Appbooster приглашают на вебинар «Продвижение приложений в мобильных сторах в 2024 году»

🙌 Будет все самое интересное:

• Как подготовить приложение к продвижению с точки зрения ASO
• Работа с репутацией в App Store и Google Play
• Как подобрать запросы для продвижения
• Стратегии продвижения в App Store и Google Play
• Как настроить кампании в платформе Appbooster
• Что нового в платформе Appbooster
• Разбор успешных кейсов
• Полезные инструменты для продвижения
• Есть ли жизнь в альтернативных сторах

🎁 Для всех зарегистрировавшихся на вебинар будет доступна акция «Новогодний кэшбэк». Все подробности — на вебинаре.

Дата и время проведения: 20 декабря в 17:00 (мск)
Длительность: 1 час
Спикер: Анна Назарова, аккаунт-менеджер платформы Appbooster

👉 Зарегистрироваться на вебинар!

Реклама. ООО "ДЖУСИСОФТ". ИНН 6312098419. erid: LjN8JufEF

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

На Reddit нашел интересное обсуждение - разработчик, вернувшийся к iOS-разработке спустя 4 года мягко говоря недоумевает по поводу того, как все усложнилось (ну или по крайней мере не улучшилось). Архитектуры - говно, async/await - днище, отладчик и Xcode - совсем полное днище, SwiftData - сахарный ненадежный бардак ну и все в таком духе. В общем, оказалось, что он такой не один:

Все новые функции и фреймворки кажутся полуфабрикатами, сломанными, и часто приходится возвращаться к старым парадигмам, потому что Apple не знает, каким вообще должно быть программирование на iOS. Функциональное, реактивное, основанное на наблюдателях? Понятия не имею, но удачи вам в попытках использовать новые API.

С другой стороны многие говорят, что все совсем не так и на самом деле iOS-разработка вполне упрощается и просто надо развиваться в своей области. Короче, крайне занимательное чтение, рекомендую.

Разработка

Как я использую мутационное тестирование для поддержки хорошего покрытия тестами
Вопросы с собеседований: что такое Copy-On-Write
Как много языков может влезть в одного программиста?
What I Wish I Knew As a Mid-Level Engineer
How to arrange GitHub actions to improve feedback cycles
Dr. Bazel: How I Learned to Stop Worrying and Love Building Systems

Маркетинг

Epic Games выиграла в суде у Google
Как я потерял $2,85 млн и решил создать приложение для массового инвестирования

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

Build a watch app using Flutter
punnyarthabanerjee/handling-real-time-data-in-flutter-efficiently-without-firebase-9b088c1b20d3">Handling Real-time data in Flutter efficiently without Firebase

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

iOS-разрабокта становится сложнее — обсуждение на Reddit
Поваренная книга SwiftUI: добавление кастомной формы к представлению SwiftUI
Symbolicate crash logs with Xcode
Leveraging Emerge Tools in CI/CD Pipelines for iOS App Size Optimisation
Distributing a Swift Macro using CocoaPods
Writing Custom SwiftLint Rule with SwiftSyntax
cjckytxz/getting-to-swift-weak-part-1-d6a0e54599e4">Getting to Swift.weak { }

#ios

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Epic Games выиграла в суде у Google

Спустя три года после того, как производитель Fortnite компания Epic Games подала в суд на Apple и Google, обвинив их в незаконной монополии на магазины приложений, Epic наконец одержала победу.

1. Присяжные по делу Epic против Google сегодня вынесли свой вердикт - они пришли к выводу, что Google превратила свой магазин приложений Google Play и сервис Google Play Billing в незаконную монополию.

2. Epic "в основном" проиграла свою борьбу с Apple два года назад. Но дело Epic против Google оказалось совсем другим. Оно было связано с секретными сделками по распределению доходов между Google, производителями смартфонов и разработчиками крупных игр, которые, по внутреннему мнению руководителей Google, были призваны сдержать конкурентов в магазинах приложений. Дело показало, что Google боялась именно Epic. И все это было решено судом присяжных, в отличие от решения Apple.

3. Пока мы не знаем, что именно выиграла Epic, это решит судья, который определит, каковы будут соответствующие последствия. Компания Epic не требовала денежной компенсации — она хотела, чтобы суд сказал Google, что каждый разработчик приложений имеет полную свободу вводить свои собственные магазины приложений и свои собственные биллинговые системы на Android. В какой форме - пока непонятно.

4. Google заявил, что компания планирует обжаловать вердикт.

И что: на самом деле, ничего особо революционного нет - и Google, и даже Apple, которая выиграла, уже готовы к стороннему биллингу и альтернативным магазинам. Конечно, сделали они это так, что лучше бы не делали, но это уже дело следующих судебных разбирательств.

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Как интегрировать Dynamic Features в Android-приложение
Tusky: Android-клиент для Mastodon
Когда официальные гайды не такие и полезные или WebSocket на ktor
How to build Wrapped 2023 in Compose Animation
Kotlin K2 Compiler's Latest Features: Subtle Under-the-Hood Advances for Koin
Exceptions for control flow in Kotlin
What can Advanced / Lesser Known Modifiers do for your UI
How I use Mutation Testing to Drive Good Test Case Coverage

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Опубликованы SDK, для которых Apple будет требовать подпись

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

1. На WWDC23 компания Apple представила новые декларации конфиденциальности и подписи для SDK, чтобы помочь повысить осведомленность о том, как сторонние SDK используют данные.

2. В файлах манифеста конфиденциальности в едином стандартном формате описываются методы обеспечения конфиденциальности для стороннего кода в приложении.

3. Apple на прошлой неделе перечислила SDK, для которых надо будет делать privacy manifest и подпись. Среди самых заметных и популярных - Alamofire, Charts, Cordova, масса библиотек FB, практически весь Firebase, Flutter, OneSignal, Protobuf, RxSwift, sqflite, UnityFramework.

И что: что-то из разряда объяснения использования UserDefaults, бессмысленное и беспощадное 😤

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

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

12 декабря в 19.00 приглашаем на вебинар “Разработка кооперативных API для совместной работы над документом”, на котором исследуем решение компании Google в сервисе Google Docs, применив интересный реверс-инжиниринг.

📌 На занятии:

• сосредоточимся на подходе, позволяющем нескольким людям одновременно вести работу над одним документом;
• обсудим теоретические и алгоритмические аспекты решения;
• проанализируем возможную реализацию на стороне бэкенда и поймем, сколько это будет стоить;
• спроектируем API для тестовой прикладной задачи.

👉Регистрация https://otus.pw/C3PTu/?erid=LjN8JueKG

Урок пройдет в рамках курса «Kotlin Backend Developer. Professional». При поступлении в группу обучения возможные разные способы оплаты и рассрочка платежа.

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Вчера, вместе с Gemini, Google представил и AlphaCode 2, улучшенную версию генератора кода AlphaCode, представленного лабораторией DeepMind около года назад. Его уже протестировали на Codeforces - AlphaCode 2 показал лучшие результаты, чем в среднем 85% участников. Это по сравнению с примерно 50% участников, которых его предшественнику удалось обойти на том же подмножестве задач. То есть был средний программист, стал уже хороший. AlphaCode 2 может понимать задачи программирования, связанные со «сложной» математикой и теоретической информатикой. Среди прочих достаточно сложных методов AlphaCode 2 способен выполнять динамическое программирование. Правда, пока использование модели стоит крайне дорого и отдавать его в использование не планируют. Но в общем понятно, что конец программирования все ближе.

Разработка

Google показал AlphaCode 2 на основе Gemini
Как устроен протокол iMessage
bagder/111538350617290554">How the first gen iPod was reverse engineered to run Rockbox

Маркетинг

5 прогнозов для мобильных приложений 2024
How to implement gamification and enhance your app’s user experience

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

Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте
shubhamsoni82422/safeguarding-your-flutter-apps-a-practical-guide-to-secure-flutter-app-development-in-2023-9ea3228db9a2">Safeguarding Your Flutter Apps

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Вопросы с собеседований: для чего нужны сервисы в Android-приложении
KSP2 Preview: Kotlin K2 and Standalone Source Generator
Improve Your Android App Performance With Baseline Profiles
Kotlin under the hood: The nuances of using annotations in Kotlin
Is it okay to use runBlocking?

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Новая основа для искусственного интеллекта в Android
CountryCP: выбор страны в Compose
kapilvij/android-interview-questions-e52dfb2cd64c">Android Interview Cheat Sheet
Live Mosaic at Droidcon London 2023
100% Flakiness-free UI test automation with Kaspresso and Allure Testops

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Beeper Mini — новое приложение для переписки в iMessage с Android (и оно работает)

Beeper Mini - новое приложение от "большого" Beeper, который занимается агрегацией мессенджеров.

1. Ранее все использовали виртуальные Mac для общения в iMessage. Но это создавало очевидные проблемы с безопасностью.

2. Для Beeper Mini сделали реверс инжиниринг протокола, деконструировали конвейер обмена сообщениями Apple от начала и до конца. Самым сложным, по словам автора, было взломать то, что, по сути, является висячим замком Apple на всей системе - проверку, является ли подключенное устройство настоящим продуктом Apple.

3. Интересно, что основой для работы послужил прототип 16-летнего школьника, который доказал саму возможность "проникновения" в iMessage и с которым теперь работает автор Beeper.

4. Код iMessage от Beeper будет с открытым исходным кодом, чтобы другие пользователи могли ознакомиться с ним.

5. Конечно, Apple глубоко защищает iMessage как механизм блокировки для iPhone, и трудно представить, что компания навсегда проигнорирует появление сторонних решений для мессенджера. Но сейчас все отлично работает - и с вожделенными "синими пузырями".

И что: если вы 16-летний школьник - для вас нет ничего невозможного 💬 Будьте как школьник ☺️

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Android

Улучшение производительности Android-приложения NordVPN с помощью плагина Compose Compiler
Реализация параллакс-карусели из SwiftUI в Jetpack Compose
mortitech/better-previews-in-compose-with-custom-annotations-dc49b94ff579">Better Previews in Jetpack Compose, Tips and Tricks
Kotlin Delegation: A Powerful Code Organization Technique for Reusability and Maintainability
dugguRK/mastery-on-invoke-kotlin-8f1ebb4828d0">Mastery on Invoke Kotlin
Clean Architecture for Android MVI
amsavarthan/stealing-api-keys-security-in-android-495dd5285892">Stealing API keys — Security in Android

#android

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

Собрал все записи собеседований мобильных разработчиков, нечто вроде Awesome Interviews ✅. iOS и Android, с разделением (эфемерным, конечно, но все же) по грейдам - Junior, Middle, Senior. Всего получилось более 60 видео, если есть чем дополнить - можно прямо в личку кидать. По мере выхода новых тоже буду добавлять, так что если интересно - следите за обновлениями.

Разработка

Онлайн собеседования мобильных разработчиков
Рынок смарт-часов восстанавливается
Самые высокооплачиваемые вакансии ноября в сфере разработки приложений
Автотесты в AvitoTech
Секреты собеседований с Алеексеем Быковым (Reddit)
Треш-обзор Geekbrains. Полный разбор курса по Android
Podlodka #343: что такое Motion Design?
UI/UX Design: The Fastest Way to Make Your Designs More Interesting
How Google takes the pain out of code reviews, with 97% dev satisfaction
How Uber Computes ETA at Half a Million Requests per Second

Маркетинг

Самые скачиваемые и зарабатывающие приложения в России в ноябре 2023
Маркетологи в мобайле: Александра Мареева («Спортмастер»)
Capsule: новости на основе ИИ и человеческих редакторов
Threads обгоняет X

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

FreeToGame: KMP-проект для Android, iOS, Desktop и Wear OS
Welcome Fleet with Kotlin Multiplatform Tooling
Kotlin Multiplatform Development Roadmap for 2024
Flutter GameDev with Casual Games Toolkit & Flame

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

Mobile Insights by AppTractor - разработка мобильных приложений и мобильная экономика

iOS

Swift Utilities — Интеграция SwiftUI в UIKit
Pow: анимационные эффекты для SwiftUI
Поваренная книга SwiftUI: создание представления-сетки
Вопросы с собеседований: в чем разница Weak и Unowned в Swift
GetInRhythm/building-robust-ios-applications-the-art-of-modularization-a21bf5350c6a">Building Robust iOS Applications: The Art of Modularization
Apple’s use of AppKit, Catalyst, Swift and SwiftUI in macOS Sonoma
Using on-demand resources for securely storing API keys in iOS apps
Observable Architecture Beta
Easy app walkthroughs with MarkWalkthrough
AsyncStream in the real world: wrapping an Apple Photos callback
From viewWillAppear to viewIsAppearing - Perfecting Your iOS View Transitions

#ios

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