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 Ру) Все о Combine за 45 мин с примерами кода
(iOS En) SwiftUI Dynamic Tab Indicators
(iOS En) watchOS: Complications
(iOS En) Swift 5.8: what will be the new features?
(And Ru) Автоматизации и инфраструктура вместо рутины и бойлерплейта
(And Ru) Как стать разработчиком в Южной Корее — инсайдерский взгляд
(And En) From data to UI: Compose phases - MAD Skills
(And En) The BEST Way to Implement a Search In Jetpack Compose
(And En) Kotlin Flow for Android Development Crash Course
(Crs Ru) Flutter Dev Podcast #39: Flutter и PWA
(Dev Ru) Podlodka #306: observability и логирование
(Dev En) When To Properly Leave Jobs So Your Career Doesn’t Get Punished

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

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

Пользуясь тем, что про самое интересное уже рассказал днем, хочу напомнить, что скоро заканчивается новый опрос Developer Nation - ключевой опрос разработчиков. Пройти просто, можно выиграть призы, заодно внести вклад в общее понимание IT-мира.

Разработка

Спрос на iOS и Android разработчиков в 2022 упал на 20%
Вышла Developer Preview версия Android 14
Godot 4: Getting Started
Accessibility Handoff: a guide for product designers

iOS

Animated Tab Bar: панель вкладок на SwiftUI
greenSyntax/ssl-pinning-in-ios-f508b5860ead">SSL Pinning in iOS
I Stopped Using Third-Party Frameworks For My Swift Projects. Here’s What Happened
Conquer Data Races with Swift Actors
How to write README file for the iOS project
jamesthang1996/unleash-your-creativity-with-custom-shapes-in-swiftui-c3c260865667">Unleash Your Creativity with Custom Shapes in SwiftUI

Android

Как защитить ваш Android APK и внедрить меры безопасности
Какие параметры компьютера влияют на скорость сборки Gradle проекта
yahyalmh/coroutines-cancellation-d844a8000f9f">Coroutines cancellation
Branch by Abstraction in Android project
Compose phases
benlue/advanced-forms-in-android-with-compose-form-154ee0bff65b">Advanced forms in Android with Compose Form
Kotlin Arrow KT Monad: A Beginner’s Guide

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

Flutter Shaders: An Introduction
Control your Flutter app on the fly with Firebase Remote Config

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

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

Google выпустил первую Developer Preview версию Android 14

1. Главные особенности этого релиза:

- Работа на разных устройствах и форм-факторах
- Оптимизация фоновой работы
- Дальнейшая кастомизация UI и работа с языками (появится, например, возможность делать гендерно зависимые переводы, my ass!)
- Безопасность и защита данных
- Совместимость приложений (поддержка OpenJDK 17, упрощение тестирования и отладки изменений)

2. Бета-версия ОС появится весной, стабильная версия летом, а выпуск традиционно назначен на начало осени.

3. Developer Preview уже есть в эмуляторах и образ можно скачать на Pixel, начиная с 4.

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

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

❗️С какими проблемами можно столкнуться при локализации iOS-приложений и как их решать?

Приглашаем 16 февраля в 20:00 на бесплатный вебинар «Поддержка многоязычности в приложениях iOS» в OTUS.

📚На занятии вы узнаете:
— Как обстоят дела со стандартной локализацией строк в типовом проекте под iOS
— Какие проблемы встречаются при разработке и тестирования приложения
— Как эти проблемы решаются инструментами кодогенерации SwiftGen, R.swift
— Что такое плюрализм и как его использовать, чтобы перевод строк был менее топорным
— Как автоматизировать ревью строковых констант с помощью Localinter
— Какие есть способы и платформы для профессиональных переводов строк

В результате занятия мы запустим в XCode проект.

🔴 Регистрация на вебинар: https://otus.pw/Z8nK/

Занятие пройдет в рамках онлайн-курса «iOS Developer. Professional».

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

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

Как в Dropbox сделали загрузку с камеры в Android быстрее и надежнее

До недавнего времени загрузка с камеры была основана на библиотеке C++, совместно используемой приложениями для Android и iOS. В 2019 году мы решили, что переписать эту функцию — лучший способ обеспечить надежный и заслуживающий доверия пользовательский опыт на долгие годы. Реализации для Android и iOS стали отдельными, используют собственные языки платформы (Kotlin и Swift) и собственные библиотеки (такие как WorkManager и Room для Android).

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

Статья: https://apptractor.ru/drpbxphoto
Платформа: Android

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

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

Android и предустановленное ПО на Galaxy S23 занимает до 60 Гб

Galaxy S23, кажется, поставил новый рекорд по распространению Bliatware Bloatware. Пишут, что из коробки новый смартфон использует около 60 Гб для системы. Если у телефона хранилище 128 Гб, то это означает, что почти половина его занята под Android и встроенные приложения. Это в 4 раза больше размера обычного системного раздела Pixel 7 Pro в 15 Гб. Или размер сразу 2 стоящих рядом Windows 11.

1. Это своя оболочка Samsung для Android, которая совсем не славится малыми объемами.

2. Собственные приложения Samsung, копирующие Google.

3. Предустановленные приложения от Samsung, вроде Netflix, Microsoft Office, Spotify, Linkedin и прочего.

4. Предустановленные приложения от оператора.

5. Что совсем прикольно, смартфон со всем этим уже не может использовать A/B системные разделы, представленные в Android 7.0, с помощью которых можно обновлять ОС в фоновом режиме.

И что: не надо так 🙃 С другой стороны, надо же кому-то свою же память продавать?

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

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

Домашняя автоматизация становится мейнстримом

1. Лидер в лице Samsung SmartThings в прошлом году получил 12 миллионов установок, но есть и меньшие конкуренты, которые показывают невероятный рост.

2. Home Assistant — еще одна популярная платформа домашней автоматизации. У нее открытый исходный код, большое сообщество пользователей и разработчиков, интеграция с различными устройствами и платформами.

3. Home Assistant закончил 4 квартал 2022 год с примерно 156 тысячами загрузок, что является самым высоким показателем среди всех кварталов. По сравнению с первым кварталом 2020 года, ежеквартальные загрузки выросли на 122%.

4. В 2022 году Home Assistant скачали почти полмиллиона человек. Для решения с открытым исходным кодом, которое требует “небольшой доработки напильником”, это отличная новость.

И что: для отрасли в целом это, наверное, означает, что Интернет вещей наконец становится обыденностью. Подумайте, может ли ваш продукт встроиться в домашнюю автоматизацию?

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

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

Видео за неделю

(iOS En) What's new for enterprise developers
(iOS En) Discover Metal Performance HUD
(iOS En) Add SharePlay to your multiplayer game with Game Center
(iOS En) Migrate custom intents to App Intents
(iOS En) Implement Apple Pay and order management
(iOS En) Integrating voice and video calling into iOS apps with CallKit
(iOS En) Lottie 4 SwiftUI
(And Ру) Jetpack Compose Battle: онлайн-собеседования Senior разработчика
(And En) How to Create an Animated Counter Text with Jetpack Compose
(And En) The Full Guide to ANNOTATIONS In Kotlin
(And En) Introduction to Compose Layouts and Modifiers - MAD Skills
(And En) Fundamentals of Compose Layouts and Modifiers - MAD Skills
(Dev Ру) Podlodka #305: цвета и цветовые пространства
(Tst Ру) Ozon Tech Community A/B-testing Meetup

Посмотрели какое-то другое видео? Скиньте мне -> 🧑🏻‍💻

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

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

Сегодня выплата денег из App Store, проверьте банковский счет 💶 Должны прийти все деньги за декабрь 2022. Если сравнить с декабрем прошлого года - как ваши успехи?

Разработка

Supercell представила новую игру Squad Busters
Our Company Fired the Best Developer and Project Manager
I Made $1000 From a Mobile Game I Designed in One Day, Without Coding
Neglecting Legacy Code? It’s a Potential Gold Mine of Learning

iOS

Как мы сократили время запуска нашего iOS-приложения на 60%
SyncKit: синхронизация Core Data или Realm
Соотношение сторон и масштабирование изображений в Image компоненте
Code a Snake Game With Button Controls Using SwiftUI
NSURLSession connection leak
Parsing in Swift: a DTO-based Approach

Android

Как настроить Gitlab CI/CD для Android и Firebase App Distribution для доставки сборок
Как мы проблемы UI в виджетах решали
5 Android Studio features you don’t want to miss
How We Kept Our App On a Diet
Jetpack Compose Tutorial: Replicating Dribbble Audio

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

12 методик, которые помогут создавать приложения на Flutter легко и просто
How it’s made: Holobooth

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

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

Кажется, что User Choice Billing в Google Play за почти год наконец добрался до “прода”. Spotify в рамках тестирования с ноября уже развернул сторонний биллинг в 140+ странах, то есть практически на всех основных рынках. Когда его дадут всем разработчикам не совсем понятно, но видимо совсем скоро, так что можно уже готовится. У Google есть специальные рекомендации по UX сторонней оплаты, если планируете - надо ознакомиться

Разработка

Spotify внедрил сторонний биллинг на 140+ рынках
Основатели Instagram готовят приложение для чтения новостей
Зарплаты IT-специалистов в России сократились
В RuStore появились Сбер ID и оплата по SberPay
Рыба потратила деньги владельца, играя в покемонов на Nintendo Switch
Как определить размер выборки для бутстрэпа старым дедовским способом
Use Pocketbase — Open Source Backend
Automate Changelog Generation with GitLab
Developer-first open-source Zapier alternative

iOS

Лучшие репозитории Swift на GitHub за январь 2022
paulwall_21/quickly-find-retain-cycles-in-your-app-with-this-one-trick-4c3caf243091">Quickly find retain cycles in your app with this one trick
The Coordinator Pattern: A Simple, Scalable Solution for iOS App Navigation
yatimistark/ios-developer-interview-questions-and-tasks-1939b6f4f0e0">iOS Developer Interview: Questions and Tasks
How We Reduced Our iOS App Launch Time by 60%
Swift IOS Interview Questions And Answers
Mastering Error Handling in SwiftUI: A Guide to Presenting Errors

Android

Лучшее репозитории Kotlin на GitHub за январь 2022
domen.lanisnik/data-objects-in-kotlin-1a549bfad657">Data Objects in Kotlin
banmarkovic/jetpack-compose-clear-back-stack-popbackstack-inclusive-explained-14ee73a29df5">Jetpack Compose clear back stack, popUpTo/popBackStack inclusive explained
Principles & Practice in Repository Layer
Stampeding Elephants

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

A pragmatic guide to BuildContext in Flutter

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

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

Рыба потратила деньги владельца, играя в покемонов на Nintendo Switch

Положительно, в этой новости прекрасно все:

1. Японский ютубер создал специальную настройку, позволяющую его любимой рыбе играть в покемонов на его Nintendo Switch.

2. Бойцовая рыбка управляет игрой, плавая в разных частях своего аквариума, которые оснащены датчиками, а все это транслируется в прямом эфире на YouTube.

3. Во время игр сбой привел к тому, что Nintendo Switch вывалилась на домашний экран.

4. После этого движение рыбы привело к открытию Nintendo eShop, и домашнее животное потратило 4 доллара из денег своего владельца на покупку очков. Рыбе также удалось загрузить приложение для игр Nintendo 64, потратить виртуальную валюту на новый аватар, запросить электронное письмо с подтверждением от PayPal и изменить имя учетной записи.

5. Наконец, рыбка смогла выключить консоль Switch до того, как человек понял, что происходит.

И что: ИИ, ChatGPT... Вот к рыбам бы присмотреться 🐟

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

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

Трендинговые репозитории GitHub за январь для языка Swift:

1. IceCubesApp - клиент Mastodon на SwiftUI (+1411)
2. CodeEdit - открытый редактор кода для macOS (+805)
3. MochiDiffusion - Stable Diffusion на Mac (+439)
4. Swift Composable Architecture - целостная и понятная архитектура для создания приложений с учетом композиции, тестирования и эргономики (+310)
5. Swift CoreML Diffusers - приложение, демонстрирующее Stable Diffusion в Core ML (+268)
6. AltStore - альтернативный магазин приложений (+197)
7. Alamofire - HTTP-клиент (+184)
8. Clean Architecture SwiftUI - пример приложения на основе чистой архитектуры (+162)
9. Damus - клиент для социальной сети nostr (+143)
10. NetNewsWire - RSS ридер (+123)
11. Swift Async Algorithms - фирменные алгоритмы Apple (+113)
12. SwiftUI Navigation - простая навигация для SwiftUI (+110)
13. SwiftFormat - инструменты форматирование Swift-кода (+87)
14. SQLite.swift - обертка для SQLite3 (+86)
15. Sileo - менеджер пакетов (+79)
16. Nuke - загрузка изображений (+79)
17. TrollTools и TrollBox - кастомизация iOS (+76)
18. GRDB.swift - инструменты для работы с SQLite (+68)
19. DeviceKit - value-type замена для UIDevice (+64)
20. Swift Snapshot Testing - тестирование снепшотов (+48)
21. Moya - абстракция сетевого уровня (+46)
22. KeychainAccess - обертка для Keychain (+41)
23. Facebook* iOS SDK - SDK запрещенной сети (+34)
24. Stripe iOS - SDK платежной системы (+22)

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

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

Забавные новости из мира открытых лицензий. Оказывается, что правила Dungeons & Dragons а) кому-то принадлежали; б) теперь они стали Creative Commons. Если серьезно, с 2000 года существовала лицензия, которая позволяла сторонним создателям использовать игровую систему для продажи своих собственных книг заклинаний, модулей, виртуальных столов. И вот несколько недель назад Wizards of the Coast решила всех перевести на новую лицензию, которая бы сделал невозможной их работу. Пользователи и создатели малость офигели и намекнули WoTC, что они не правы. Удивительно, но владельцы признали, что сильно накосячили и сейчас талмуд правил в 403 страницы открыли по Creative Commons. Не уверен, что всем эти знания пригодятся, но добро победило. И можно (наверное) сделать что-нибудь в мире Dungeons & Dragons.

Разработка

Правила Dungeons & Dragons опубликованы в Creative Commons
Уязвимости Galaxy Store дают возможность установки любых приложений
55 млн установок за 3 года: бизнес на мобильных приложениях в нише фото/видео редакторов
Как стать разработчиком мобильных приложений: Профориентация
Podlodka #304: .NET, часть 2
У GitHub 100 миллионов активных пользователей
Should There Be a Developer Mental Health Day?
Maintainable No-Code UI Automation for Mobile with Maestro Studio

iOS

Поиск callback-ов кнопок в рантайме iOS
Native iOS Touch Events w/ Rust
SwiftUI — Using Frames To Align
Use Core ML To Build a Minority Report-Inspired User Interface in iOS
A Scalable Alternative to Switch-case: Abstract Factory in Swift
Infinite Scrolling Using SwiftUI and View Model (MVVM)

Android

WhatIf: синтаксический сахар Kotlin
Jetpack Compose Codelabs: практическое обучение Compose
Креативный кодинг с Kotlin и Compose
Библиотека Room для начинающего Android-разработчика
RuStore: разработка магазина приложений
What should you expect when migrating your Android project to Kotlin 1.7.0?
Kotlin Sealed Interfaces with KotlinX Serialization JSON
Operator overloading in Kotlin
Is the New Gradle Version Catalog Worth It for Your Android Projects?

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

Самые популярные кроссплатформенные фреймворки
Использование шейдеров во Flutter. Часть 1
Why follow “Clean Architecture” in Flutter?
Why You Should Use BLoC As Your State Management for Your Flutter App

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

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

На прошлой неделе писал про "закат" React Native, сейчас в AppFigures в целом исследовали популярность кроссплатформенных фреймворков.

1. Количество приложений на двух платформах - на графике. На данный момент самым популярным ненативным фреймворком является Unity.

2. Удивительно, но веб-обертки занимают два места из пяти - Cordova и Ionic поверх нее.

3. Релизы по годам - на графике.

5. Видно, что веб-приложениям все-таки пришел конец, у них самое большое падение.

6. Flutter стал мейнстримом в еще в 2021 и у него самое маленькое падение в 2022.

7. Связано ли падение React Native с Flutter? Отчасти, однако, скорее всего, большая его часть обусловлена именно общей ситуацией на рынке - упрощением нативной разработки и соответствующим отходом от кроссплатформы.

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

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

Видео за неделю

(iOS) Do iOS 2022 Conference Videos
(iOS) Exploring the DoorDash app internal API
(iOS) SwiftUI Collapsible Header Menu
(iOS) How to easily test InApp Purchases in an iOS app
(And) RuStore: разработка магазина приложений
(And) How to Create an Animated Counter Text with Jetpack Compose
(And) How to EASILY Download Any File in Android With DownloadManager
(Crs) Flutter Forward Videos
(Dev) 55 млн установок за 3 года: бизнес на мобильных приложениях в нише фото/видео редакторов
(Dev) Как стать разработчиком мобильных приложений: Профориентация
(Dev) Podlodka #304: .NET, часть 2

Добавить еще -> 🧑🏻‍💻

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

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

GitHub, принадлежащий Microsoft, сегодня объявил, что уволит 10% своих работников

1. Это примерно 300 из 3000 работающих в GitHub человек.

2. GitHub также продлит мораторий на найм новых сотрудников.

3. Для сокращения затрат GitHub переходит на Teams для удовлетворения своих запросов на видеоконференции.

4. Цикл обновления ноутбуков увеличен с 3 до 4 лет.

5. Глобальная цель - чтобы компания стала "developer-first инженерной системой для мира завтрашнего дня с особым вниманием к искусственному интеллекту".

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

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

В 2022 году в России упал спрос на разработчиков приложений под операционные системы iOS и Android

1. За 2022 год по данным hh.ru количество вакансий в РФ для iOS-разработчиков упало на 20%, до 15.6 тыс. В январе снижение составило уже 40%.

2. По данным «Хабр Карьеры», в январе количество вакансий под iOS-разработчиков уменьшилось на 19%.

3. За 2022 год по данным hh количество вакансий в РФ для Android-разработчиков упало на 19%, до 17.3 тыс., в январе — на 36%.

4. По данным «Хабр Карьеры», число вакансий для разработчиков на Android в январе, наоборот, выросло на 18%.

5. Но растет число вакансий для разработчиков под российские мобильные ОС. Так, для разработчиков под ОС «Аврора» количество вакансий в 2022 году выросло на 53%, до 359 (по итогам 2021 года было опубликовано 235 вакансий). Число вакансий для разработчиков на Kaspersky OS выросло на 9% год к году, до 6.1 тыс.

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

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

Magic, еще один аналог Copilot от GitHub, получил 23 миллиона в Серии А от фонда CapitalG (Alphabet) и ряда инвесторов. Любопытно, что работающей версии у стартапа нет и работает над ИИ всего 6 человек. Зато в планах сделать ИИ, который будет программировать в компаниях, понимать legacy код и учить новичков. Недавно закрывшийся Kite свой product-market fit так и не нашел. Его автор на момент прекращения работы говорил, что создание инструмента, способного синтезировать продакшен код, может стоить более 100 миллионов долларов. Так что получится ли у Magic - большой вопрос.

Разработка

$23 млн в Серии А: Magic — ИИ-платформа написания кода
Пять примечательных функций Postman, которые мы используем в тестировании банковских систем
All You Need Is Love-able Products

iOS

Как ускорить Swift, упорядочив соответствия
Apple Fired Me as a Software Engineer
A Beginner’s Guide to Styling Components in SwiftUI
Mastering charts in SwiftUI. Interactions.
swvl/automating-ios-releases-using-github-actions-59ae879220d4">Automating iOS releases using GitHub Actions
Our 1 Mistake in iOS App Modularization That Slows our Xcode Build process

Android

Google унифицирует вход в приложения с Credential Manager API
Tracker Go: отслеживание бега
RuStore завершил бета-тестирование
Как адаптировать Android-приложение под Huawei
The K2 Compiler is going stable in Kotlin 2.0
Kotlin Flow for Android Development Crash Course
How to build a custom Facebook login button using Firebase Auth in Jetpack Compose

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

neetishsingh97/flutter-using-magic-container-2313588d063">Flutter: Using Magic Container
alxlion/how-i-created-an-open-source-bereal-clone-with-flutter-b994493e062f">How I created an open-source BeReal clone with Flutter

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

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

По неподтвержденным данным, увольнения в Google в значительной степени коснулись команды, работавшей на Fuchsia. Пишут, что общая численность персонала Google должна быть сокращена примерно на 6%, а команда Fuchsia пострадала гораздо больше - было уволено не менее 16% . По тем же источникам внутренний инкубатора Area 120 вообще практически прекратил свое существование, что очень жаль, мне всегда нравились его проекты. Возвращаясь к Fuchsia - да, 16% от 400 работников не так уж и много, но сокращения еще больше подчеркивают туманность будущего ОС, кому и где она будет нужна, как будет развиваться.

Разработка

Fuchsia и Area 120 пострадали от увольнений в Google
Чит-лист функционального тестирования, памятка тестировщику
The Value of Code Versus The Value Of A Product
Optimistic UI and How It Makes the Web Feel Faster
2023: The Future Of Ui/Ux Design (and How You Can Prepare)

iOS

Custom Slider Control: слайдер для iOS
How I Built an Emoji Picker Library for iOS
How to Add OAuth in iOS in Half an Hour
peterdestasio/understanding-automatic-reference-counting-arc-in-ios-development-59233f7ca847">Understanding Automatic Reference Counting (ARC) in iOS Development
How Abstractions Help Us Solve Tight Coupling

Android

Как в Dropbox сделали загрузку с камеры в Android быстрее и надежнее
Android и предустановленное ПО на Galaxy S23 занимает до 60 Гб
Speed Up Your Jetpack Compose Development With the Compose Helper IDE plugin
asmaeziani47/how-to-protect-your-android-apk-and-implement-security-measures-4372578286a0">How to Protect Your Android APK and Implement Security Measures
Pattern Matching in Kotlin is Awesome
Introduction to Class Delegation

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

Supporting Multiple Modals in React Native: A New Approach

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

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

SocialPeta опубликовала итоговое исследование по рынку мобильных игр и приложений за 2022 год

Отчет включает порядка 200 страниц аналитики. В ней содержатся маркетинговые данные о ситуации на глобальном рынке мобильных игр и приложений, обзор ситуации в регионах и в различных категориях, информация о чартах и трендах в создании креативов, а также прогнозы от Singular, Tenjin, Digital Turbine, Moloco, Storemaven, AdQuantum и других компаний.

Скачайте полный отчёт здесь:
https://www.socialpeta.com/academy/socialpeta-2022-mobile-marketing-whitepaper

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

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

Интересно, что в то время, как разработчики формируют целые экосистемы, Twitter закрывает бесплатный доступ к API. Сколько будет стоить полноценный доступ пока неизвестно, но Маск уже пошел на попятную - сказал для правильных ботов будет Write-only доступ бесплатно. Как будут измерять правильность тоже пока непонятно. В общем, колбасит человека знатно 🚬

Разработка

Twitter закрывает бесплатный доступ к API
Пренебрегаете Legacy кодом? Зря, потенциально это настоящая золотая жила для обучения
Flutter Dev Podcast #39: Flutter и PWA
Домашняя автоматизация растет — загрузки Home Assistant выросли на 122% за год
Почему EA закрыла Apex Legends Mobile
Ozon Tech Community A/B-testing Meetup
Podlodka #305: цвета и цветовые пространства
Slack Machine: боты для Slack
В чем разница между unit и компонентным тестированием
The ultimate guide to proper use of animation in UX

iOS

Google готовит новый браузер для iOS на собственном движке
Выручка Apple в 1 квартале 2023 снизилась на 5%
Swift-код в качестве пользовательских команд LLDB
Styling Components in SwiftUI
A path of pain with URLCache eviction and subclassing
Observing the content offset of a SwiftUI ScrollView
How to cancel a background task in Swift
From Zero to App Store With ChatGPT
The Adapter Design Pattern in Swift
A comprehensive guide to Coordinator Pattern in Swift

Android

Несущиеся слоны: опыт Square в улучшении системы сборки для Android
Dashlane Android Apps: открытые менеджеры паролей
Jetpack Compose Battle: онлайн-собеседования Senior разработчика
Introducing the Kotlin Playground
Fundamentals of Compose layouts and modifiers
Leveraging the Snapshot Mutation Policies of Jetpack Compose
Composing the desktop
Scheduling notifications in Android
Provider Pattern in Jetpack Compose
Building a Video Chat App: WebRTC on Android

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

Использование шейдеров во Flutter. Часть 2
Animated Icons: The Missing Piece to Your Bottom Nav in Flutter & Rive
felixdavid12/top-7-best-practices-in-flutter-1dc3ebd2a55">Top 7 best practices in Flutter

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

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

Новый большой еженедельный дайджест - 97 материалов за неделю. Прочитайте, обсудите, поставьте 👍, поделитесь, подпишитесь и все такое прочее, буду благодарен 😀

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

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

Несущиеся слоны: опыт Square в улучшении системы сборки для Android

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

• Покажите мне данные
• Путешествие начинается
• Шардинг CI: особое примечание
• Серебряные пули
• Постепенные улучшения, накопление выгоды
buildSrc мертв. Да здравствует build-logic!
Будьте ленивыми
Удалите скрипты
Устраните межпроектную конфигурацию
Тестируйте свою сборку
Используйте кэш конфигурации
• Путешествие продолжается
• Шаблоны решений: серебряные пули и постепенная выгода

Статья: https://apptractor.ru/sqgrdl
Платформа: Android

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

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

Как мы сократили время запуска нашего iOS-приложения на 60%

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

В DoorDash мы очень серьезно относимся к скорости запуска приложений. Мы одержимы оптимизацией опыта наших клиентов и постоянными улучшениями. В этой статье мы рассмотрим три отдельные оптимизации, которые сократили время, необходимое для запуска нашего iOS-приложения, на 60%.

1. Изменили String(describing:) на ObjectIdentifier()
2. Прекратили преобразовывать ненужные объекты в AnyHashable
3. Проверили инициализации сторонних фреймворков

Статья: https://apptractor.ru/drdsh60
Платформа: iOS

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

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

Привет, это команда Тинькофф 💡

Наше большое комьюнити мобильных разработчиков решает крутые задачи — создает высоконагруженные сервисы для 27 миллионов клиентов. Мы экспериментируем и ищем новые решения. Приглашаем в команду mobile-разработчиков с опытом от трех лет!

Работать с нами значит:

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

А еще мы всегда «за» действительно комфортную работу. Поэтому большинство бытовых забот делегируем компании: от расширенного ДМС и юридической помощи до питания и разных активностей.

Откликнуться и узнать подробнее о команде mobile-разработчиков Тинькофф: https://l.tinkoff.ru/mobile.stream

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

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

Трендинговые репозитории GitHub за январь для языка Kotlin:

1. v2rayNG - клиент V2Ray для Android (+717)
2. ViMusic - стриминг музыки с YouTube Music (+709)
3. Now In Android - лучшие практики Android-разработки в новостном приложении Google (+671)
4. Tachiyomi - открытый ридер манга для Android (+539)
5. ChatGPT Android - чат с ИИ с использованием Stream Chat SDK для Compose (+442)
6. Сloudstream - стриминг и скачивание кино, сериалов и аниме (+410)
7. Seal -скачивание видео/аудио с YouTube (+385)
8. bv - приложение Android TV для Bilibili (+340)
9. Saikou - клиент Anilist с аниме и манга (+302)
10. BiliRoaming - клиент Bilibili с фишками и перками (+300)
11. Maestro - автоматизация тестирования UI (+258)
12. Matsuri - V2Ray/proxy toolchain для Android (+251)
13. Android Developer Roadmap - план развития Android-разработчика (+241)
14. Сompose JB - Compose Multiplatform от JetBrains (+232)
15. Balloon - всплывающие подсказки (+188)
16. Unciv - открытая «Цивилизация» (+186)
17. Ivy Wallet - приложение для управления деньгами с открытым исходным кодом (+163)
18. Anki Android - карточки для запоминания и повторения (+143)
19. Uhabits - открытое приложение для формирования привычек (+139)
20. Komga - медиасервер для комиксов и манга (+139)
21. Fenix - Firefox для Android (+116)
22. Sunflower - лучшие практики Android-разработки в приложении о растениях (+113)
23. Ktlint - линтер для Kotlin (+64)
24. TV bro - браузер, оптимизированный для ТВ (+55)
25. Purpur - сервер для Minecraft (+46)

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

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

Если вам, как и мне, всегда казалось, что с концепцией MVP и “бережливого стартапа” что-то не так, то вот в статье рассказывают по пунктам что-же именно (моя любимая цитата - "для меня самое сложное в идее минимально жизнеспособного продукта заключается в том, что вы не знаете, что такое минимум, и вы не знаете, что такое жизнеспособный"). Стоит учесть, что автор “продает” свою методологию “осознанного стартапа”, но в целом его идеи и предлагаемые альтернативы кажутся очень здравыми. Так что если вы разрабатываете собственные продукты - посмотрите, может будет полезно.

Разработка

4 главные проблемы с методологией Бережливого стартапа
VK открывает набор на бесплатные курсы по ручному тестированию и углубленному Python
Приложение Rewind позволяет «путешествовать во времени» с помощью музыки
Складной iPad может появится в следующем году
Как устроена бесшовная авторизация в онлайн-кинотеатре
Что делать, если в начале спринта у тестировщика нет задач?
Оптимизация тестов для Continuous Integration
Victa — беговое приложение и шагомер для любителей игр и аниме
Five stars code reviews

iOS

Loop for iOS: шаблон приложения для приема инсулина
Recreating Apple Wallet Payment Ring with SwiftUI
Reusable Components for Scalable Projects with UIKit Programmatically Swift 5
Lazy NavigationLink for SwiftUI
arash.good93/annotation-injection-with-compile-time-safety-in-swift-d9866b91ebb7">Annotation Injection with compile-time safety in Swift
Mastering charts in SwiftUI. Custom Marks.

Android

Make your Android app a share target. Receive simple data from other applications with Hilt and Compose
Picture-in-picture (PiP) mode in Android
Protecting Project Integrity
Leveraging the Snapshot Mutation Policies of Jetpack Compose

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

12 методик, которые помогут создавать приложения на Flutter легко и просто
8 Flutter Widgets Every App Should Contain
Introducing Dart 3 alpha
KMP: A Use Case For Common UI Behavior
TensorFlow Lite Tutorial for Flutter: Image Classification

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

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

Приглашаем мобильных разработчиков выступить на конференции Mobius 2023 Spring!

Конференция будет идти четыре дня: 12–13 мая в онлайне и 19–20 мая в офлайне в Москве. Приглашаем вас выступить на ней.

Стать спикером Mobius — это возможность:
👉 Развить личный бренд и улучшить навык публичных выступлений.
👉 Обсудить рабочие задачи в неформальной обстановке.
👉 Попасть на все конференции весны от JUG Ru Group бесплатно.
👉 Пообщаться с комьюнити и Программным комитетом.

Выбирайте любой формат — доклад, воркшоп, дискуссию или что-то свое. Вам помогут подготовиться, проведут репетиции, а после конференции вы получите запись в 4K на YouTube, чтобы поделиться ей с друзьями и коллегами.

Выбирайте тему на сайте или предлагайте свои идеи и подавайте заявку до 20 февраля.

Билеты на Mobius 2023 Spring уже в продаже.

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

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

Новый большой еженедельный дайджест - 105 материалов за неделю. Прочитайте, обсудите, поставьте, поделитесь, подпишитесь и все такое прочее. Моя благодарность вашей оценке не будет знать никаких границ 😀

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

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

На конференции Flutter Forward в Кении Google рассказал о будущем платформы. В отличие от закатывающегося React Native, планы на Flutter большие. Сейчас вступает в строй новый “гладкий и шелковистый” рантайм для рендеринга Impeller, в новых версиях Google улучшит “встраиваемость” фреймворка (будет проще использовать в приложении на другом языке), упростится работа с системными API, все будет компилится в WebAssembly, будет поддерживаться RISC-V и пр. В общем, Flutter, кажется, все больше становится реальной альтернативой и скоро будет способен вменяемо работать на “всех поверхностях”.

Разработка

Будущее платформы на Flutter Forward: новая графика, WebAssembly и RISC-V
20 советов для разработчиков игр от разработчиков игр
FunCorp/how-to-reduce-the-bloated-testing-process-1a64e8585321">How to reduce the bloated testing process
TARS: A product metric game changer

iOS

SwiftUI Navigation: упрощение навигации в SwiftUI
ChatGPT in an iOS Shortcut — Worlds Smartest HomeKit Voice Assistant
Multi-select Filter in Swift
Prevent copy & paste into other iOS apps
mina.a.ghalii/increase-app-performance-method-dispatch-ios-f577f9152e55">Increase App Performance (Method Dispatch iOS)
Store an Array of Custom Data Types in Core Data With Transformable and NSSecureCoding
dinozavr2005/big-o-notation-in-swift-a05afc36dc3d">Big O notation in Swift

Android

Android 14 будет блокировать устаревшие приложения
Делаем Android-приложение Airbnb более доступным
Google меняет политики Android в Индии
5 Beginner Testing Mistakes
JWT Authentication and Refresh Token in Android with Retrofit Interceptor & Authenticator
Behavior Driven Mobile Testing
How to Make the Firebase Database SDK Work Better With Kotlin

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

Flutter 3.7 — Что нового во Flutter
Создание WEBGL приложения Вконтакте на Unity
Dart — What I Learned From (Re)Learning It
Adapting Wonderous for Landscape

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