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

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Вышли первые 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

У 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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

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

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

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

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

(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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Только что 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Первый стабильный релиз 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Самые скачиваемые и зарабатывающие приложения в России в ноябре 2023

В установках Телеграм и Wildberries снова поменялись местами — маркетплейс даже увеличил установки по сравнению с октябрем, но Telegram вырос больше и в ноябре набрал более 3.4 миллиона новых пользователей. А так в десятке все без особых изменений.

По деньгам ВКонтакте и Телеграм снова возглавляют список самых зарабатывающих, а дальше игры меняются местами друг с другом. На 9 месте снова Литрес, а на 10 — FaceApp.

Десятка зарабатывающих:

1. VK: social network, messenger
2. Telegram
3. PUBG MOBILE
4. Royal Match
5. Tanks Blitz PVP битвы
6. Roblox
7. Gardenscapes
8. Homescapes
9. Litres: Books and audiobooks
10. FaceApp: Perfect Face Editor

Не совсем запуск, но интересный пример роста - приложение Wink на фоне запуска своего платформенного сериала "Слово пацана" поднялось в чарте установок аж на 161 место. Wink опередил все остальные стриминги, в том числе "Кинопоиск". Правда, пока это в доходы не вылилось, впрочем у онлайн-кинотеатра есть веб-платежи и период бесплатного смотрения, так что итоги лучше подводить в декабре. Любопытно в ASO: если в 🌐 страницу приложения полностью забрендировали под новый сериал, то в Google Play он даже не упоминают. Конечно, iOS-приложение обновили на прошлой неделе, а на Android еще в середине ноября, но все равно - кажется это не очень правильно.

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

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

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

(iOS En) Swift Data One to Many Relationships
(iOS En) SwiftData Starter Project
(iOS En) SwiftUI Shine Effect – Custom View Modifier
(iOS En) SwiftUI: Infinite Looping ScrollView - iOS 17
(iOS En) SwiftLeeds 2023 Videos
(And Ru) Разработка UI на Jetpack Compose
(And Ru) Треш-обзор Geekbrains. Полный разбор курса по Android
(And En) What's new in Android Studio Hedgehog
(And En) Now in Android: 96 - New APIs for adaptive layouts, Google Play updates, and more!
(And En) compileSdk VS. targetSdk VS. minSdk - THIS Is the Difference
(And En) Full Guide to Shared Element Transition Animation in Android with Jetpack Compose
(Crs En) Shared Navigation on Kotlin Multiplatform with Decompose (KMP)
(Crs En) Coil Goes Multiplatform with Colin White
(Crs En) Step-by-Step Guide: Creating a Peer-to-Peer Tic Tac Toe Game in Flutter
(Dev Ru) Автотесты в AvitoTech
(Dev Ru) Секреты собеседований с Алеексеем Быковым (Reddit)
(Dsg Ru) Podlodka #343: что такое Motion Design?

Поставьте 👍 и поделитесь подборкой!

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

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

Android

Элегантная обработка событий в Kotlin — рефакторинг в 7 шагов
FlexibleBottomSheet: удобный Bottom Sheet для Jetpack Compose
Первый месяц жизни приложения BookDesk или как меня пытались взломать
Списки с душой и стилем: Ваш путь к Jetpack Compose
dugguRK/kotlin-functions-every-developer-should-know-with-examples-3f88ce36ba66">Kotlin Functions Every Developer Should Know with Examples
3 Android Studio Plugins for a Better Developer Experience for Kotlin

#android

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

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

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Опубликованы 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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

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

📌 На занятии:

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

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

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

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

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

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

Вчера, вместе с 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

Собрал все записи собеседований мобильных разработчиков, нечто вроде 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 Development by AppTractor - iOS и Swift, Android и Kotlin, Flutter и Dart, инструменты, рынок и все остальное

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

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

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

Ускоряем утечки памяти

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

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

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

У Data.ai и Google вышло “практическое” руководство по монетизации приложений. По большей части - делайте хорошо, а плохо не делайте. Из интересного - график средних цен для встроенных покупок, пик которых пришелся на весну, и календарь ключевых моментов на 2024 год с разными праздниками, к которым можно приурочить свои активности. В общем, не обязательно, но местами может быть полезно.

Разработка

Как мы (не) вкатились в геймдев. Часть 1
Knowledge Graphs from scratch with Python

Маркетинг

Как монетизировать приложения - практическое руководство Data.ai и Google
Лучшие приложения и игры в Google Play 2023
Лучшие приложения года в App Store Awards 2023
Повышение Результативности Мобильного Маркетинга: Использование AIGC, Apple Search Ads и Steam Creatives для Повышения Эффективности UA

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

Хитрый виджет: разбор тестового Flutter-задания. Детективная нуар-история
Sharing codebase between platforms — a look at Kotlin and Compose multiplatform
Flutter + Flame + Tiled = a simple game field prototype for a strategy game
React Native's New Architecture
Reactive Programming in Flutter
shabbir.kody/shimmer-skeleton-effects-in-flutter-b8755b3e57bb">Shimmer & Skeleton Effects In Flutter

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

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

iOS

Working with XcodeKit
Add Quick Actions to SwiftUI App
SwiftUI geometryGroup() Guide: From Theory to Practice
Create Your Own Step Counter SwiftUI App in 5 Minutes

#ios

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