Как протестировать Android-приложение, которому требуются разрешения
Подробный туториал по написанию UI-тестов на Kaspresso для приложений, которым требуются разрешения.
Читать (Ru)
Подробный туториал по написанию UI-тестов на Kaspresso для приложений, которым требуются разрешения.
Читать (Ru)
🔥7👍4❤2👎1
Игра в безопасность Android-приложений
Большая и полезная статья, в которой рассматриваются различные процессы взлома Android-приложений(отслеживание http/https трафика, ресурсы, AndroidManifest, обфускация/деобфускация, C++) и возможные варианты защиты.
Читать (Ru)
Большая и полезная статья, в которой рассматриваются различные процессы взлома Android-приложений(отслеживание http/https трафика, ресурсы, AndroidManifest, обфускация/деобфускация, C++) и возможные варианты защиты.
Читать (Ru)
👍16🔥3❤2
Кодогенерация токенов дизайн-системы для Android по Figma API
Большая статья про то, как поддерживать дизайн-систему в консистентном состоянии с помощью автоматизации и интеграции Figma → Android.
👉 Почему решили идти в историю с автоматизацией
👉 Research и первая попытка
👉 Data-слой
👉 Генерация цветов
👉 Генерация типографики
👉 Генерация изображений
👉 Работа с устаревшими (или deprecated) токенами
👉 Остальные токены
👉 Генерация XML для Android View System
👉 Схема генерации. Итоговый проект
👉 Итоги
👉 Полезные ссылки
Читать (Ru)
Большая статья про то, как поддерживать дизайн-систему в консистентном состоянии с помощью автоматизации и интеграции Figma → Android.
👉 Почему решили идти в историю с автоматизацией
👉 Research и первая попытка
👉 Data-слой
👉 Генерация цветов
👉 Генерация типографики
👉 Генерация изображений
👉 Работа с устаревшими (или deprecated) токенами
👉 Остальные токены
👉 Генерация XML для Android View System
👉 Схема генерации. Итоговый проект
👉 Итоги
👉 Полезные ссылки
Читать (Ru)
👍13❤2👎1🔥1
Конструкторы-самозванцы в Kotlin
Интересная статья про некоторые особенности в Kotlin, связанные с вызовами конструкторов классов и функциями, которые имеют аналогичный синтаксис.
Читать (Ru)
Интересная статья про некоторые особенности в Kotlin, связанные с вызовами конструкторов классов и функциями, которые имеют аналогичный синтаксис.
Читать (Ru)
👍11❤3🔥2👌1
“Лента” в Yandex Mobile Ads SDK 7
В седьмую версию SDK добавили новый рекламный формат, который способен вместить десятки рекламных объявлений в один блок. “Лента” подойдет для утилит, новостей, классифайдов и других приложений с возможностью пролистывания. Пока инструмент доступен в бета-режиме для Android-приложений.
А в этой короткой статье есть описание всех остальных обновлений. Для iOS тоже есть интересные фичи.
Читать (Ru)
В седьмую версию SDK добавили новый рекламный формат, который способен вместить десятки рекламных объявлений в один блок. “Лента” подойдет для утилит, новостей, классифайдов и других приложений с возможностью пролистывания. Пока инструмент доступен в бета-режиме для Android-приложений.
А в этой короткой статье есть описание всех остальных обновлений. Для iOS тоже есть интересные фичи.
Читать (Ru)
💩15🔥5👍4
Mastering Android ViewModels: Essential Dos and Don’ts Part 2
Вторая часть из цикла Mastering Android ViewModels. Эта часть про возможные проблемы при использовании мутабельных состояний в качестве контрактов.
👉 Нарушение инкапсуляции
👉 Риски целостности данных
👉 Повышенная сложность
👉 Проблемы параллелизма
👉 Проблемы тестирования
👉 Архитектурная ясность
👉 Отсутствие контроля над подписчиками
Читать (En)
Вторая часть из цикла Mastering Android ViewModels. Эта часть про возможные проблемы при использовании мутабельных состояний в качестве контрактов.
👉 Нарушение инкапсуляции
👉 Риски целостности данных
👉 Повышенная сложность
👉 Проблемы параллелизма
👉 Проблемы тестирования
👉 Архитектурная ясность
👉 Отсутствие контроля над подписчиками
Читать (En)
👍12🔥3❤1🗿1
Capturing composable to a bitmap without losing a state
Обзор библиотеки Capturable для захвата UI Composable и генерации Bitmap без потери качества.
Библиотека на GitHub → Capturable
Читать (En)
Обзор библиотеки Capturable для захвата UI Composable и генерации Bitmap без потери качества.
Библиотека на GitHub → Capturable
Читать (En)
🔥11👍5❤1
Что делать, если кандидат оказался сеньором или психом: советы на случай форс-мажоров
Ещё одна статья о проведении собеседований, а именно про то, какие качества важны для технического интервьюера, как давать эффективную обратную связь и вести себя при форс-мажорах на собеседовании.
Читать (Ru)
Ещё одна статья о проведении собеседований, а именно про то, какие качества важны для технического интервьюера, как давать эффективную обратную связь и вести себя при форс-мажорах на собеседовании.
Читать (Ru)
👍8😁6🔥2
Dependency Injection in Compose
Статья с рекомендациями по использованию Hilt в Compose. Как предоставляются и определяются зависимости, чем отличается от привычного подхода на Fragment/Activity и т.д.
👉 Scoping dependencies
👉 What’s different in Compose
👉 Use ViewModel and Compose Navigation
👉 Use an enclosing class with constructor injection
👉 Avoid storing dependencies in CompositionLocal
👉 Use Entry Points
👉 Use a custom dependency Component
Читать (En)
Статья с рекомендациями по использованию Hilt в Compose. Как предоставляются и определяются зависимости, чем отличается от привычного подхода на Fragment/Activity и т.д.
👉 Scoping dependencies
👉 What’s different in Compose
👉 Use ViewModel and Compose Navigation
👉 Use an enclosing class with constructor injection
👉 Avoid storing dependencies in CompositionLocal
👉 Use Entry Points
👉 Use a custom dependency Component
Читать (En)
👍9🔥2❤1💩1
Forwarded from Swift Tips
Popular git config options
Самые популярные настройки Git config.
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Читать (En)
Самые популярные настройки Git config.
•
pull.ff only or pull.rebase true•
merge.conflictstyle zdiff3•
rebase.autosquash true•
rebase.autostash true•
push.default simple, push.default current
• init.defaultBranch main•
commit.verbose true•
rerere.enabled true•
help.autocorrect 10•
core.pager delta•
diff.algorithm histogram•
core.excludesfile ~/.gitignore•
includeIf: separate git configs for personal and work•
fsckobjects: avoid data corruption•
submodule stuffЧитать (En)
🔥6❤4👍3
Kotlin Learning Guide
Jetbrains подготовила большой гайд с демо и курсами по изучению Kotlin для всех уровней 👍
👉 Introduction to Kotlin
👉 Kotlin Onboarding
👉 Kotlin Koans
👉 AtomicKotlin
👉 Kotlin Core
👉 Coroutines and Channels
👉 Introduction to IDE Code Refactoring in Kotlin
👉 Algorithmic Challenges in Kotlin
👉 Kotlin Developer
👉 Introduction to Ktor
👉 Kotlin Backend Developer (Spring Boot)
👉 Introduction to Android With Kotlin
👉 Android Developer With Kotlin
Будет полезно как новичкам, так и разработчикам с опытом.
Читать (En)
Jetbrains подготовила большой гайд с демо и курсами по изучению Kotlin для всех уровней 👍
👉 Introduction to Kotlin
👉 Kotlin Onboarding
👉 Kotlin Koans
👉 AtomicKotlin
👉 Kotlin Core
👉 Coroutines and Channels
👉 Introduction to IDE Code Refactoring in Kotlin
👉 Algorithmic Challenges in Kotlin
👉 Kotlin Developer
👉 Introduction to Ktor
👉 Kotlin Backend Developer (Spring Boot)
👉 Introduction to Android With Kotlin
👉 Android Developer With Kotlin
Будет полезно как новичкам, так и разработчикам с опытом.
Читать (En)
🔥13👍5❤2
Swift Cheatsheet for Android/Kotlin Developers
Относительно большая статья с сравнением Swift и Kotlin: синтаксис, основы и некоторые распространённые шаблоны.
👉 Basics (Variables, Optionals/Nullability, Functions, etc)
👉 Structures and Classes
👉 Optional Binding
👉 Enums
👉 Dictionary / Map
👉 Extensions
👉 Protocols
Читать (En)
Относительно большая статья с сравнением Swift и Kotlin: синтаксис, основы и некоторые распространённые шаблоны.
👉 Basics (Variables, Optionals/Nullability, Functions, etc)
👉 Structures and Classes
👉 Optional Binding
👉 Enums
👉 Dictionary / Map
👉 Extensions
👉 Protocols
Читать (En)
👍12🔥3❤2👎1
Что посмотреть на выходных. Подборка полезностей 👇
Накопилась очередная порция интересных и полезных видосов.
Лекции Young&&Yandex
• Android - Вводная про платформу
• Android - Погружение в JVM
• Android - View в Android
• Android - Продвинутый UI
• Android - Архитектура
• Android - Корутины
• Android - Потоки и асинхронность
• Android - Инструменты разработки
• Android - Jetpack compose
• Network в Android
• Gradle и система сборки Android
• iOS - Вводная про платформу
• iOS - Advanced Swift programming
• iOS - Persistence
• iOS - Архитектура
• iOS - Concurrency
• iOS - Слой представления UIView
• iOS - Слой вью-контроллеров UIViewController
• iOS - SwiftUI
• Алгоритмы - теория и практика
Mobius
• Android – Как мы создавали дизайн-систему на Jetpack Compose
• DION – Интеграция MediaPipe в Android-приложение видеоконференцсвязи
• BDUI – удовольствие или боль
• BDUI на 100%: управляем шиммерами с бэкенда
• Убиваем Lottie? Тащим Rive?
• Cracking the Mobile Interview
• iOS — Навигация в SwiftUI
• Как Compose Multiplatform for iOS может убить Flutter?
• Рецепт приготовления кроссплатформенного мобильного видеоредактора
• Жизнь инди в Google Play
• Tracer — альтернатива Crashlytics. Другой взгляд на аналитику ошибок в приложениях
Накопилась очередная порция интересных и полезных видосов.
Лекции Young&&Yandex
• Android - Вводная про платформу
• Android - Погружение в JVM
• Android - View в Android
• Android - Продвинутый UI
• Android - Архитектура
• Android - Корутины
• Android - Потоки и асинхронность
• Android - Инструменты разработки
• Android - Jetpack compose
• Network в Android
• Gradle и система сборки Android
• iOS - Вводная про платформу
• iOS - Advanced Swift programming
• iOS - Persistence
• iOS - Архитектура
• iOS - Concurrency
• iOS - Слой представления UIView
• iOS - Слой вью-контроллеров UIViewController
• iOS - SwiftUI
• Алгоритмы - теория и практика
Mobius
• Android – Как мы создавали дизайн-систему на Jetpack Compose
• DION – Интеграция MediaPipe в Android-приложение видеоконференцсвязи
• BDUI – удовольствие или боль
• BDUI на 100%: управляем шиммерами с бэкенда
• Убиваем Lottie? Тащим Rive?
• Cracking the Mobile Interview
• iOS — Навигация в SwiftUI
• Как Compose Multiplatform for iOS может убить Flutter?
• Рецепт приготовления кроссплатформенного мобильного видеоредактора
• Жизнь инди в Google Play
• Tracer — альтернатива Crashlytics. Другой взгляд на аналитику ошибок в приложениях
🔥13❤6👍4👎1
How to safely update state in your Kotlin apps
Статья про управление и безопасное обновление состояния.
👉 What is a state? What is a state transaction?
👉 Making State Reactive
👉 Unifying States
👉 Making State Consistent with State Families
👉 Making State Updates Parallel
👉 Serializable State Transactions
Читать (En)
Статья про управление и безопасное обновление состояния.
👉 What is a state? What is a state transaction?
👉 Making State Reactive
👉 Unifying States
👉 Making State Consistent with State Families
👉 Making State Updates Parallel
👉 Serializable State Transactions
Читать (En)
👍8🔥3🤔2
How to build a custom design system with Jetpack compose
Пример реализации дизайн-системы на Jetpack Compose.
Читать (En)
Пример реализации дизайн-системы на Jetpack Compose.
Читать (En)
🤔12👍5👎2🔥2
Forwarded from Swift Tips
Может ли мобильный-разработчик стать CTO?
Короткая версия:Да, может. На этом статью можно было бы закончить. Спасибо, что дочитали до конца, приходите поделиться своим опытом в комментариях.
Подробней читайте в статье: какие есть пути развития в мобильной разработке, что делать, если ты уже тимлид, кто такие крутые Individual Contributors (топовые разработчики) и как стать одним из них.
Читать (Ru)
Короткая версия:
Подробней читайте в статье: какие есть пути развития в мобильной разработке, что делать, если ты уже тимлид, кто такие крутые Individual Contributors (топовые разработчики) и как стать одним из них.
Читать (Ru)
🤡7👍6🔥5😁3❤1
How Kotlin Annotations Work
Несколько статей про то, как работают аннотации в Kotlin.
В первой части рассматриваются основые механизмы: annotation processing, reflection и lint. Во второй части показывается весь процесс на примере библиотеки Moshi.
👉 What are Kotlin annotations?
👉 Annotation Processing
👉 Annotation Processor Tool
👉 Kotlin Annotation Processor Tool
👉 Kotlin Symbol Processing
👉 Reflection
👉 Lint
👉 Mysterious custom annotations
• Part 1
• Part 2
Несколько статей про то, как работают аннотации в Kotlin.
В первой части рассматриваются основые механизмы: annotation processing, reflection и lint. Во второй части показывается весь процесс на примере библиотеки Moshi.
👉 What are Kotlin annotations?
👉 Annotation Processing
👉 Annotation Processor Tool
👉 Kotlin Annotation Processor Tool
👉 Kotlin Symbol Processing
👉 Reflection
👉 Lint
👉 Mysterious custom annotations
• Part 1
• Part 2
🔥11👍3❤2
Composable Modifier vs composed factory in Jetpack Compose
Cтатья с разбором нескольких способов(CMF, composed) написания собственных модификаторов в Jetpack Compose: отличия способов, какие есть ограничения и что с производительностью.
👉 Extractability
👉 Resolution Location of CompositionLocal Values
👉 State Resolution
👉 Performance
👉 Skippablity
Читать (En)
Cтатья с разбором нескольких способов(CMF, composed) написания собственных модификаторов в Jetpack Compose: отличия способов, какие есть ограничения и что с производительностью.
👉 Extractability
👉 Resolution Location of CompositionLocal Values
👉 State Resolution
👉 Performance
👉 Skippablity
Читать (En)
👍8❤2🔥2
Kodein DI для Android. Целостность графа и тесты на DI
Третья часть из цикла "Kodein DI для Android", в которой рассказывается, как можно проверять целостность графа с помощью юнит-тестов, которые будут выполняться на CI.
Читать (Ru)
Третья часть из цикла "Kodein DI для Android", в которой рассказывается, как можно проверять целостность графа с помощью юнит-тестов, которые будут выполняться на CI.
Читать (Ru)
👍5🔥4🤔2
Разработка под Android в 2024 году
На хабре перевели вот эту статью, с технологиями, которые будут актуальны в современной разработке под Android в 2024 году.
Читать (Ru)
На хабре перевели вот эту статью, с технологиями, которые будут актуальны в современной разработке под Android в 2024 году.
Читать (Ru)
👍6❤3🔥3🤮2👎1💩1