Анализ сведений о запуске и завершении приложений в Android 15
В Android 11 появилась
В Android 15 реализована новая
С помощью этих данных можно проследить, как пользователи используют приложение. С помощью данных о выходе можно было проверить, не осталось ли в приложении проблем с выходом, а теперь и то, нет ли проблем с входом.
Статья: https://apptractor.ru/info/articles/analiz-svedeniy-o-zapuske-i-zavershenii-prilozheniy-v-android-15.html
Платформа: Android
В Android 11 появилась
ApplicationExitInfo, из которой можно узнать исторические причины, по которым приложение было выключено/завершено.В Android 15 реализована новая
ApplicationStartInfo, которую можно использовать для анализа причин того, почему и как приложение было запущено.С помощью этих данных можно проследить, как пользователи используют приложение. С помощью данных о выходе можно было проверить, не осталось ли в приложении проблем с выходом, а теперь и то, нет ли проблем с входом.
Статья: https://apptractor.ru/info/articles/analiz-svedeniy-o-zapuske-i-zavershenii-prilozheniy-v-android-15.html
Платформа: Android
GroupTrack - приложение для Android с открытым исходным кодом от Canopas, предназначенное для повышения безопасности семьи благодаря функциям обмена местоположением и общения в режиме реального времени. GroupTrack призван обеспечить душевное спокойствие, гарантируя безопасность ваших близких и облегчая бесперебойную связь с ними независимо от их местоположения. Технический стек: MVVM, Jetpack Compose, Koltin, Coroutines + Flow, Jetpack Navigation, Retrofit, DataStore и Room, Firebase, Google Maps SDK,
Hilt.
GroupTrack на GitHub: https://github.com/canopas/group-track-android
Платформа: Android
⭐️: 53
Hilt.
GroupTrack на GitHub: https://github.com/canopas/group-track-android
Платформа: Android
⭐️: 53
Как в eXpress достигали мгновенного рендера отправки сообщения: оптимизация локальной базы данных
Меня зовут Воронская Дарья, я работаю в Android Core команде eXpress и занимаюсь оптимизацией работы приложения. Я расскажу про подходы, которые мы использовали, чтобы довести скорость отправки и рендера сообщения до того самого идеального результата.
В этой статье речь пойдет только о работе с локальной базой данных. Оптимизация БД — лишь часть большой работы, мы расскажем про наши решения по оптимизации presentation слоя в других статьях.
Наш стек: Kotlin, Room, Coroutines, WebSocket, OkHttp.
Статья: https://habr.com/ru/companies/express/articles/852268/
Платформа: Android
Меня зовут Воронская Дарья, я работаю в Android Core команде eXpress и занимаюсь оптимизацией работы приложения. Я расскажу про подходы, которые мы использовали, чтобы довести скорость отправки и рендера сообщения до того самого идеального результата.
В этой статье речь пойдет только о работе с локальной базой данных. Оптимизация БД — лишь часть большой работы, мы расскажем про наши решения по оптимизации presentation слоя в других статьях.
Наш стек: Kotlin, Room, Coroutines, WebSocket, OkHttp.
Статья: https://habr.com/ru/companies/express/articles/852268/
Платформа: Android
Objective-C не кусается: как перестать бояться Legacy и стать настоящим iOS-ниндзя
Хочу поговорить о теме, которая волнует многих разработчиков: использование старых технологий в iOS-разработке, таких как Objective-C. Тут возникает очень насущный вопрос, являются ли он легаси?
Статья: https://habr.com/ru/articles/848788/
Платформа: iOS
Хочу поговорить о теме, которая волнует многих разработчиков: использование старых технологий в iOS-разработке, таких как Objective-C. Тут возникает очень насущный вопрос, являются ли он легаси?
Статья: https://habr.com/ru/articles/848788/
Платформа: iOS
😁1
This media is not supported in your browser
VIEW IN TELEGRAM
KeyboardKit - это SwiftUI SDK, позволяющий создавать полностью настраиваемые расширения клавиатуры с помощью нескольких строк кода.
KeyboardKit Pro расширяет KeyboardKit такими функциями, как автодополнение и автокоррекция, поддержка искусственного интеллекта, мощная клавиатура эмодзи, диктовка, темы, шаблоны приложений и многое другое.
Расширения клавиатуры можно использовать во всех других приложениях на iOS, где поддерживается ввод текста. Это единственный способ для вашего продукта или бренда напрямую взаимодействовать с другими приложениями на iOS.
KeyboardKit Pro на GitHub: https://github.com/KeyboardKit/KeyboardKitPro
Платформа: iOS
⭐️: 112
KeyboardKit Pro расширяет KeyboardKit такими функциями, как автодополнение и автокоррекция, поддержка искусственного интеллекта, мощная клавиатура эмодзи, диктовка, темы, шаблоны приложений и многое другое.
Расширения клавиатуры можно использовать во всех других приложениях на iOS, где поддерживается ввод текста. Это единственный способ для вашего продукта или бренда напрямую взаимодействовать с другими приложениями на iOS.
KeyboardKit Pro на GitHub: https://github.com/KeyboardKit/KeyboardKitPro
Платформа: iOS
⭐️: 112
👍2
Взлом покупок в Android-приложении и защита от этого
Встроенные покупки (In-app purchases, IAP) являются основой современных приложений, позволяя пользователям разблокировать премиум-функции или подписываться на услуги. Однако, когда разработчики не обеспечивают должной безопасности процесса выставления счетов, могут возникнуть уязвимости, позволяющие обойти проверку платежей. В этой статье мы расскажем о том, как Frida, динамический инструментарий, может обойти механизмы биллинга в приложениях для Android. Мы покажем, как можно взломать небезопасные процессы покупок и что могут сделать разработчики.
Статья: https://apptractor.ru/info/articles/primer-vzlom-pokupok-v-android-prilozhenii-i-zaschita-ot-etogo.html
Платформа: Android
Встроенные покупки (In-app purchases, IAP) являются основой современных приложений, позволяя пользователям разблокировать премиум-функции или подписываться на услуги. Однако, когда разработчики не обеспечивают должной безопасности процесса выставления счетов, могут возникнуть уязвимости, позволяющие обойти проверку платежей. В этой статье мы расскажем о том, как Frida, динамический инструментарий, может обойти механизмы биллинга в приложениях для Android. Мы покажем, как можно взломать небезопасные процессы покупок и что могут сделать разработчики.
Статья: https://apptractor.ru/info/articles/primer-vzlom-pokupok-v-android-prilozhenii-i-zaschita-ot-etogo.html
Платформа: Android
Советы Junior-разработчикам
В этой статье упоминаются и даются ссылки на множество ценных концепций, которые вы можете исследовать дальше по своему усмотрению.
Статья: https://apptractor.ru/info/articles/sovety-junior-razrabotchikam.html
Платформа: разработка
В этой статье упоминаются и даются ссылки на множество ценных концепций, которые вы можете исследовать дальше по своему усмотрению.
Общие советы для Junior-разработчиков
1. Код не главное
2. Дизайн программного обеспечения имеет значение
3. Используйте ЛУЧШИЕ практики
Технические советы для Junior-разработчиков
4. Пишите тесты
5. Не используйте наследование для повторного использования кода
6. Пишите объектно-ориентированный код
7. Пишите функциональный код
8. Используйте информированное дублирование
9. Типы, имена и комментарии
Рекомендуемое чтение для Junior-разработчиков
Книги
Блоги
Бонусные ссылки
Статья: https://apptractor.ru/info/articles/sovety-junior-razrabotchikam.html
Платформа: разработка
🤡3
Задачи с собеседований: Leetcode — Сложите два числа
Вам даны два непустых связанных списка, представляющих два неотрицательных целых числа. Цифры хранятся в обратном порядке, и каждый из их узлов содержит одну цифру. Сложите эти два числа и верните сумму в виде связанного списка.
Статья: https://apptractor.ru/develop/coding/add-two-numbers.html
Платформа: программирование
Вам даны два непустых связанных списка, представляющих два неотрицательных целых числа. Цифры хранятся в обратном порядке, и каждый из их узлов содержит одну цифру. Сложите эти два числа и верните сумму в виде связанного списка.
Статья: https://apptractor.ru/develop/coding/add-two-numbers.html
Платформа: программирование
Android Compose Accessibility Techniques - демонстрация различных передовых методов обеспечения доступности для пользовательских интерфейсов на базе Android Jetpack Compose, а также проблем, которые они могут решить. Исходный код проекта приложения поможет вам научиться применять эти методы в рабочем коде.
Android Compose Accessibility Techniques на GitHub: https://github.com/cvs-health/android-compose-accessibility-techniques
Платформа: Android
⭐️: 56
Android Compose Accessibility Techniques на GitHub: https://github.com/cvs-health/android-compose-accessibility-techniques
Платформа: Android
⭐️: 56
Области тьмы: разбираем неочевидные моменты при использовании памяти в Swift
В статье хочу рассмотреть, казалось бы, набившую оскомину тему — управление памятью в Swift и системой подсчёта ссылок. Да, на Хабре уже есть пара довольно исчерпывающих статей. Но предлагаю копнуть с другой стороны и попытаться собрать недостающие детали пазла.
Статья: https://habr.com/ru/companies/clevertec/articles/852718/
Платформа: iOS
В статье хочу рассмотреть, казалось бы, набившую оскомину тему — управление памятью в Swift и системой подсчёта ссылок. Да, на Хабре уже есть пара довольно исчерпывающих статей. Но предлагаю копнуть с другой стороны и попытаться собрать недостающие детали пазла.
Статья: https://habr.com/ru/companies/clevertec/articles/852718/
Платформа: iOS
Самые весёлые TODO из Android-фреймворка
Иногда на проекте (особенно если он большой) некоторые TODO обречены на то, чтобы остаться в нем навеки и Android Open Source Project не исключение. Сегодня я расскажу про самые забавные тудухи из AOSP (Android Open Source Project) на которые мне приходилось натыкаться во время изучения исходников.
Статья: https://habr.com/ru/companies/alfa/articles/837880/
Платформа: Android
Иногда на проекте (особенно если он большой) некоторые TODO обречены на то, чтобы остаться в нем навеки и Android Open Source Project не исключение. Сегодня я расскажу про самые забавные тудухи из AOSP (Android Open Source Project) на которые мне приходилось натыкаться во время изучения исходников.
Статья: https://habr.com/ru/companies/alfa/articles/837880/
Платформа: Android
Видео и подкасты за неделю на @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS En) CocoaHeadsNL Meetup•
(iOS En) Google Engineer Teaches Us How to Set Up Firebase in Your iOS Project•
(iOS En) App-Wide Overlays | SwiftUI•
(iOS En) MockData, PreviewModifiers and PreviewTraits in SwiftUI•
(And Ru) Избавляемся от Context в бизнес логике — как ответить на собеседовании•
(And En) Studio Jewelry - Android Developers Backstage•
(And En) How to Migrate Your App to Support the NEW Predictive Back Gestures On Android•
(And En) How to Implement Image Compression On Android•
(And En) Practical Tips and Tricks to Improve Your Compose Previews•
(Dev Ru) Backend vs Frontend: сравниваем опыт разработчиков — что сложнее, перспективнее и кому больше платят•
(Dev Ru) Grafana: инструкция по применению•
(Dev Ru) Тесты с душком•
(Dev Ru) Как писать библиотеки: проектирование API, обратная совместимость•
(Dev En) Learn Claude AI – Build Text Summarizers, Image Describers, and More with the Anthropic API•
(Dev En) Gemma Developer Day Tokyo#ios #android #mobile #video
👍1
CoreDataEvolution - эта библиотека призвана упростить и улучшить работу Core Data с многопоточностью, черпая вдохновение из функции @ModelActor в SwiftData, обеспечивая эффективные, безопасные и масштабируемые операции.
В SwiftData появились современные функции параллелизма, такие как @ModelActor, что упростило обработку параллельного доступа к данным с гарантированной компилятором безопасностью. Однако требования SwiftData к платформе и ограниченная зрелость в некоторых областях удерживали многих разработчиков от его внедрения. CoreDataEvolution устраняет этот пробел, перенося передовой дизайн SwiftData в мир Core Data для разработчиков, которые все еще полагаются на Core Data.
CoreDataEvolution на GitHub: https://github.com/fatbobman/CoreDataEvolution
Платформа: iOS
⭐️: 26
В SwiftData появились современные функции параллелизма, такие как @ModelActor, что упростило обработку параллельного доступа к данным с гарантированной компилятором безопасностью. Однако требования SwiftData к платформе и ограниченная зрелость в некоторых областях удерживали многих разработчиков от его внедрения. CoreDataEvolution устраняет этот пробел, перенося передовой дизайн SwiftData в мир Core Data для разработчиков, которые все еще полагаются на Core Data.
CoreDataEvolution на GitHub: https://github.com/fatbobman/CoreDataEvolution
Платформа: iOS
⭐️: 26
iOS 18 для разработчиков: Ключевые изменения в UIKit
Меня зовут Лена, я работаю iOS-разработчиком в KTS. Недавно вышла новая версия iOS 18, и я решила подробно изучить все нововведения, чтобы понять, какие новые возможности она предлагает разработчикам. В этой статье расскажу и покажу самые интересные обновления в UIKit — новый TabBar, анимации, совместимость UIKit/SwiftUI и многое другое.
Статья: https://habr.com/ru/companies/kts/articles/852764/
Платформа: iOS
Меня зовут Лена, я работаю iOS-разработчиком в KTS. Недавно вышла новая версия iOS 18, и я решила подробно изучить все нововведения, чтобы понять, какие новые возможности она предлагает разработчикам. В этой статье расскажу и покажу самые интересные обновления в UIKit — новый TabBar, анимации, совместимость UIKit/SwiftUI и многое другое.
Статья: https://habr.com/ru/companies/kts/articles/852764/
Платформа: iOS
Восстанавливаем удалённые сообщения в Telegram
Очевидно, данная статья не раскрывает каких-то фундаментальных тем и является лишь описанием личного опыта по довольно специфическому вопросу. Однако мне не удалось найти публикаций, которые раскрывали бы эту тему так же подробно и конкретно. Возможно, статья может оказаться полезной в некоторых жизненных ситуациях для самого широкого круга лиц. А также будет занятной и поучительной для тех, кто слишком полагается в вопросах безопасности на инструменты мессенджеров.
Статья: https://habr.com/ru/articles/852902/
Платформа: Android
Очевидно, данная статья не раскрывает каких-то фундаментальных тем и является лишь описанием личного опыта по довольно специфическому вопросу. Однако мне не удалось найти публикаций, которые раскрывали бы эту тему так же подробно и конкретно. Возможно, статья может оказаться полезной в некоторых жизненных ситуациях для самого широкого круга лиц. А также будет занятной и поучительной для тех, кто слишком полагается в вопросах безопасности на инструменты мессенджеров.
Статья: https://habr.com/ru/articles/852902/
Платформа: Android
Правда ли, что приложения для Android намного меньше, чем для iOS?
На первый взгляд это правда! Размер, который мы видим в магазине приложений для iOS, почти всегда в разы больше размера Android-аналога в Google Play Store.
Но что, если я скажу вам, что размеры приложений для Android больше, чем может показаться на первый взгляд?
В этой статье мы расскажем, почему приложения для Android больше, чем кажется, откуда берутся размеры на обеих платформах и действительно ли приложения для iOS намного больше, чем для Android.
Статья: https://apptractor.ru/develop/pravda-li-chto-prilozheniya-dlya-android-namnogo-menshe-chem-dlya-ios.html
Платформа: iOS/Android
На первый взгляд это правда! Размер, который мы видим в магазине приложений для iOS, почти всегда в разы больше размера Android-аналога в Google Play Store.
Но что, если я скажу вам, что размеры приложений для Android больше, чем может показаться на первый взгляд?
В этой статье мы расскажем, почему приложения для Android больше, чем кажется, откуда берутся размеры на обеих платформах и действительно ли приложения для iOS намного больше, чем для Android.
Статья: https://apptractor.ru/develop/pravda-li-chto-prilozheniya-dlya-android-namnogo-menshe-chem-dlya-ios.html
Платформа: iOS/Android
👍1
Lawnchair - это бесплатный открытый лаунчер для Android. Взяв за отправную точку Launcher3 - домашнее приложение Android по умолчанию, он переносит функции Pixel Launcher и предоставляет богатые возможности для настройки.
Главные фичи:
• Pixel Launcher-подобный пользовательский интерфейс с дизайном Material You
• Виджет At a Glance с поддержкой Smartspacer
• Поддержка QuickSwitch
• Поддержка глобального поиска
• Настройка иконок, шрифтов и цветов
Lawnchair на GitHub: https://github.com/LawnchairLauncher/lawnchair
Платформа: Android
⭐️: 9.4K
Главные фичи:
• Pixel Launcher-подобный пользовательский интерфейс с дизайном Material You
• Виджет At a Glance с поддержкой Smartspacer
• Поддержка QuickSwitch
• Поддержка глобального поиска
• Настройка иконок, шрифтов и цветов
Lawnchair на GitHub: https://github.com/LawnchairLauncher/lawnchair
Платформа: Android
⭐️: 9.4K
Осваиваем ViewModel в Android: «можно» и «нельзя» — Часть 5 (4, 3 ,2, 1)
В этой статье мы рассмотрим:
8. Избегайте жесткого прописывания диспетчеров корутинов
9. Проводите модульное тестирование своих ViewModel
10. Избегайте раскрытия suspended функций
Статья: https://apptractor.ru/info/articles/osvaivaem-viewmodel-v-android-mozhno-i-nelzya-chast-5.html
Платформа: Android
В этой статье мы рассмотрим:
8. Избегайте жесткого прописывания диспетчеров корутинов
9. Проводите модульное тестирование своих ViewModel
10. Избегайте раскрытия suspended функций
Статья: https://apptractor.ru/info/articles/osvaivaem-viewmodel-v-android-mozhno-i-nelzya-chast-5.html
Платформа: Android
Реализуем Face ID аутентификацию в iOS-приложении
В этой статье мы рассмотрим процесс интеграции Face ID в приложения для iOS, чтобы повысить безопасность и удобство использования.
Статья: https://apptractor.ru/info/articles/realizuem-face-id-autentifikatsiyu-v-ios-prilozhenii.html
Платформа: iOS
В этой статье мы рассмотрим процесс интеграции Face ID в приложения для iOS, чтобы повысить безопасность и удобство использования.
Статья: https://apptractor.ru/info/articles/realizuem-face-id-autentifikatsiyu-v-ios-prilozhenii.html
Платформа: iOS
Paralayout - это набор простых, полезных и понятных утилит, которые обеспечивают пиксельно идеальную верстку в iOS. С их помощью вы просто и быстро сможете определять размеры, взаимное отношение и распределение представлений на экране.
Paralayout на GitHub: https://github.com/square/Paralayout
Платформа: iOS
⭐️: 786
Paralayout на GitHub: https://github.com/square/Paralayout
Платформа: iOS
⭐️: 786
React Native полностью переделан
После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.
Статья: https://habr.com/ru/articles/854348/
Платформа: кроссплатформенная разработка
После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.
Статья: https://habr.com/ru/articles/854348/
Платформа: кроссплатформенная разработка