TGViewer
Channel Public Channel
Mobile Native ️️

Mobile Native ️️

@mobile_native

Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://t.me/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Subscribers
5.38K
Photos
1.2K
Videos
18
Links
1.3K

Showing posts older than #1096 · Back to latest

Older Posts 20 shown
Post #1095 4.39K
Создание и использование BOM в Gradle

В статье рассказывается про то, как можно организовать BOM (bill of materials) для управления версиями зависимостей + рассматриваются более сложные кейсы создания и использования BOM в Gradle-проектах.

👉 Зачем вообще нужен BOM?
👉 Как выглядит BOM?
👉 Когда создавать свой BOM?
👉 Что такое Rich Model и Gradle Module Metadata?
👉 Как несколько BOM сочетаются друг с другом?
👉 Управление версиями Gradle-плагинов через BOM

Читать (Ru)
  • 🔥 6
  • 👍 4
  • 🤔 1
Post #1093 4.34K
Как вкатиться в безопасность android приложений в 2024

Тут Артём Кулаков систематизировал инфу для начинающих, на тему безопасности и анализа Android приложений. Если хотите залететь в мобильный инфобез, обязательно почитайте.

👉 Особенности предметной области
👉 Что почитать на тему безопасности и анализа
👉 Базовые инструменты
👉 Как выглядит процесс анализа приложения
👉 Прочие обучающие материалы

Читать (Ru)
  • 🔥 9
  • ❤ 4
  • 👍 1
Post #1092 4.01K
Разбираемся, почему Google Play Protect посчитал 2ГИС вредоносным ПО

Все же видели некоторое время назад, что Android пользователи начали получать от Google Play уведомления о том, что 2ГИС вредоносное приложение и его нужно удалить?

Так вот, Google Play Protect ошибочно посчитал 2ГИС вредоносным приложением, а ребята из 2ГИС разобрали ситуацию публично на хабре, с предположениями почему так произошло, с техническими нюансами, ответами на вопросы и деталями, для чего используются различные пермишены в приложении.

Читать (Ru)
  • 👍 8
  • 🤔 3
  • 🗿 2
  • 👎 1
  • 🔥 1
Post #1091 5.23K
My Top 10 Clean Code Tips for Kotlin Mobile in 2024

10 советов для написания более чистого кода.

👉 Organize project files
👉 One, Two… Refactor!
👉 Avoid Deep Nesting: Confronting the Arrowhead Anti-Pattern
👉 Document your code
👉 Limit Global State and Singletons
👉 Avoid complex oneliners
👉 Use names for values instead of it
👉 Avoid hack-like or genius code
👉 Avoid IfNeeded and Maybe functions
👉 Sleep well

Читать (En)
  • 👍 12
  • 🔥 5
  • 👎 3
  • ❤ 1
  • 🤔 1
Post #1090 4.64K
Пример исследовательского реверс-инжиниринга приложения Zone Launcher

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

👉 Объединение split-apk в один apk
👉 Декомпиляция кода apk
👉 Разархивировние apk и изменение android-байткода (smali) функций
👉 Сборка измененного байткода
👉 Ужатие и подписание нового apk своей подписью

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

А валидацию версии лучше делать двойную и на клиенте и на бэке, это конечно не 100% гарантия, но значительно может усложнить задачу взлома.

Читать (Ru)
  • 👍 6
  • 🔥 6
  • 🤔 1
  • 😍 1
Post #1089 8.96K
Новогодний Дайджест 🎅

Итак ребята, если вдруг вам нечем будет заняться в новогодние праздники, специально для вас собрал наиболее популярные посты в структурированном виде за весь год 😱, точно найдете для себя что-то полезное 😉

Android 🖥

• 7 Jetpack Compose Projects to Become a Better Android Developer
• 10 Open-Source Projects That’ll Make You Excited About Using Jetpack Compose
• Jetpack Compose Samples
• Jetpack Compose Codelabs
• Android Basics with Compose
• Осознанная оптимизация Compose
• Best Practices for Compose Navigation in Multi-Module Project
• Migrating to Jetpack Compose — an interop love story
• Performance with Jetpack Compose
• Jetpack Compose: Mastering States
• Реализуем современный UI на Jetpack Compose
• Android Kotlin Coroutines interview questions
• Работа с асинхронными операциями с помощью Kotlin Coroutines
• Coroutines Guide
• Kotlin Coroutines Recipes
• Kotlin Coroutines Best practices
• Kotlin Coroutines Tutorial for Android: Getting Started
• От потоков к корутинам: как и почему видоизменились примитивы синхронизации в языке Kotlin.
• Learn Kotlin Flow by real examples for Android
• Kotlin. Коллекции
• Серия статей – Kotlin под капотом
• Mastering Kotlin : A Comprehensive Guide
• Вопросы и ответы для собеседования по Kotlin
• Inline, noinline, crossinline, reified in kotlin with examples
• Best practices for error handling in Kotlin
• Kotlin Performance Tuning: 20 Best Practices You Should Know
• Kotlin: взгляд изнутри — преимущества, недостатки и особенности
• Teach Computer Science with Kotlin
• Архитектура Android. Понятно и подробно
• Guide to Good Android App Architetture
• Clean Android multi-module offline-first scalable app in 2022
• Clean Architecture for Android Sample Project
• Modern Android Development in 2023
• Multi-Module Architecture in Android
• The "Real" Modularization in Android
• How to architect Android apps
• Crash Course on the Android UI Layer
• Android-разработка для новичков: 20+ полезных ресурсов
• Android Developer Roadmap 2023
• Deep Dive Into Android Memory
• Где и как можно ускорить приложение на Android
• Эффективное и комплексное устранение утечек памяти в Android
• How ViewModel works under the hood
• Best Practises In ViewModel
• Communicating with fragments
• Многопоточность в мобильной разработке
• Gradle Cache: Your build’s best friend
• Shielding Your App: Implementing Best Practices for Android Security
• Reverse Engineering and Analyzing Android Apps
• Обзор актуальных инструментов шифрования в Android
• Ускоряем поиск по коду в Android Studio
• Список фишек Android Studio для ускорения разработки
• Оптимизация сборок Android приложений: ProGuard, D8, R8. Тайны обфускации

iOS💸

• In-App Purchases in iOS
• Swift iOS interview questions and answers
• 7 iOS Projects to Become a Better iOS Developer
• Разбираем ошибки начинающих iOS-разработчиков
• Как не потерять голову (и память) при поиске утечек в iOS
• Building Large-Scale Apps with SwiftUI: A Guide to Modular Architecture
• Swift async/await. Чем он лучше GCD?
• Как стать iOS-разработчиком?
• Многопоточность в iOS-разработке
• Awesome iOS Dev Tools
• Полезные iOS-инструменты для дебаггинга
• iOS Developer Roadmap 2023
• Расширенное управление памятью с помощью Unsafe Swift
• 10 quick tips to increase your iOS code quality
• 10 tips to increase your iOS code quality – Part 2
• Server-Driven UI using SwiftUI
• Книги по Swift и iOS-разработке для начинающих специалистов и профессионалов
• Ускоряем прохождение iOS UI-тестов
• Mastering in SwiftUI
• Как хранить данные в iOS: UserDefaults, Keychain и сэндвичи

Common 🛠

• Основы алгоритмов
• Git Cheat Sheet
• Книга – Чистый код: создание, анализ и рефакторинг.
• Чистый код
• System Design Interview
• Clean Code — A practical approach
• Cracking the Mobile System Design Interview (iOS & Android)
• Делай нейминг как сеньор
• Mobile Applications Data Security

Что посмотреть 📹

• Часть 1
• Часть 2
• Часть 3

Еще раз с наступающим друзья, увидимся в январе 😉
  • 👍 27
  • ❤ 8
  • 🎄 4
  • 🔥 3
  • ☃ 2
Post #1088 4.09K
С Наступающим Новым Годом!!! 🎄🥳🎉

Предпоследний пост в этом году.

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

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

Канал в этом году не особо вырос, но остальную статистику держим на уровне 🔥. В новом году подумаю над вариантами масштабирования.

С Наступающим Новым Годом, друзья!!! 🥂
  • 🎉 18
  • ❤ 10
  • 👍 4
  • 🍾 3
Post #1087 6.18K
Android Kotlin Coroutines interview questions

Большой список из 100 вопросов по корутинам, которые спрашивают на собесах.

Читать (En)
  • 🔥 32
  • ❤ 5
  • 👍 3
Post #1086 4.62K

Forwarded from Swift Tips

Mastering in SwiftUI

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

• Which architecture is better: Redux or MVVM?
• Use @StateObject and @ObservableObject
• Create @Published variable with care
• Breaking down the content of the body into smaller to minimize the compilation time
• Prefer @State for the animations instead of @Published
• Declare Observable objects at a specific place to avoid unnecessary UI update
• Find which data change is causing a SwiftUI view to update
• Use LazyHStack and LazyVStack if you have a long list
• Is there anything similar to viewDidLoad()?
• Use UIKit components directly in SwiftUI
• Conditional modifier
• Avoid using .padding and .frame together
• Use GeometryReader wisely
• Use AnyView occasionally
• Must use ID with Foreach and List
• Prefer using Text over Label
• Use Group to return multiple view instances
• Use .fixedSize() to specify that the frame doesn’t change

Перевод от AppTractor → Мастерство работы в SwiftUI

Читать (En)
  • 🔥 2
  • ❤ 1
  • 👍 1
Post #1085 5.4K
Animating Inside and Outside the Box with Jetpack Compose

Большая и полезная статья с примерами различных анимаций в Jetpack Compose.

👉 Custom Animation Handlers
👉 Choreographing Complex Animations
👉 Physics-based Animations for Realism
👉 Gesture-based Animations
👉 State-driven Animation Patterns
👉 Morphing Shapes
👉 Snowfall effect

Читать (En)
  • 👍 12
  • 🔥 2
  • ❤ 1
  • 👌 1
Post #1084 5.37K
Crash Course on the Android UI Layer

Тут стартовал цикл статей про построение UI слоя в Android: стейты, сущности, best practices и. т.д.

👉 Part 1
👉 Part 2
  • 🔥 12
  • 👍 3
  • ❤ 2
Post #1083 5.65K
Списки с душой и стилем: Ваш путь к Jetpack Compose

Статья с обзором и примерами использования списков в Jetpack Compose.

👉 Использование списков в Compose(LazyColumn, LazyRow, Column и Row)
👉 Оптимизация производительности списков
👉 Анимации в списках

Может быть полезно начинающим.

Читать (Ru)
  • 👍 17
  • ❤ 4
  • 🔥 3
  • 👌 1
Post #1081 4K
Detekt: как статический анализ помогает улучшить код автотестов

Статья от Яндекса про то, как можно повысить качество кода автотестов с помощью статического анализа (Detekt).

👉 Коробочные правила
👉 Примеры наших правил
👉 Как написать своё правило
👉 Способы игнорирования нарушений
👉 Отчётность

Набор правил от Яндекса на GitHub → Detekt rules for UI-tests

Читать (Ru)
  • 👍 8
  • 🔥 3
  • 👏 2
Post #1080 4.05K
Kotlin под капотом: как избавиться от рекурсии

Новая статья от Макса про Tailrec и хвостовую рекурсию в Kotlin, с примерами и различным вариантами замен рекурсии.

👉 Tailrec и хвостовая рекурсия
👉 Рекурсия в деревьях
👉 Стандартный способ избавления от рекурсии через очередь
👉 Способ избавления от рекурсии через итератор
👉 Способ избавления от рекурсии через sequence.yield
👉 Результаты измерений

Читать (Ru)
  • 👍 10
  • 🔥 3
  • 🤔 2
Post #1078 4.34K

Forwarded from Swift Tips

Ускоряем прохождение iOS UI-тестов

Серия статей про то, как ускорить прохождение UI-тестов: что такое test runner и какие бывают, зачем распараллеливать тесты, зачем стартовать приложение с определенного экрана и какие способы реализации существуют и т.д.

• Запуск тестов без сборки проекта
• Распараллеливание тестов
• Старт приложения с определенного экрана
  • 👍 4
  • 🔥 2
  • ❤ 1
Post #1077 4.72K
Переход на Gradle 8 Android проекта

Если еще не перевели свой проект на 8 Gradle, вероятно эта статья поможет вам минимизировать время на поиски решения различных нюансов, которые обычно возникают при обновлении.

Читать (Ru)
  • 👍 18
  • 🔥 3
  • ❤ 1
Post #1076 5.53K
Android. Принять себя или Cookie?

Достаточно полезная статья, про то, как работать с Сookie в Android, как передаются Cookie, безопасность и вот это вот всё.

👉 Cookie — это что?
👉 Почему их не нужно принимать?
👉 Безопасно ли это?
👉 CookieJar, CookieManager, CookieStore… WebView?

Читать (Ru)
  • 🔥 13
  • 🤔 5
  • 👍 2
Post #1074 5.82K
Топ-10 вопросов на Senior Android / Собеседование с разбором ответов и материалами

Не особо слежу за каналом Антона, но иногда посматриваю.

Вот например интересный видос, мок собеседование на Senior Android. И вопросы интересные и кандидат 🔥, можно посмотреть.

Смотреть 📹
  • 👍 11
  • 🔥 7
  • 👎 3
  • 🤔 2
Post #1072 5.75K
Kotlin Multiplatform в мобильной разработке. Рецепты общего кода для Android и iOS

Статья про Kotlin Multiplatform, с примером как можно выносить код в общий модуль.

👉 Общий модуль в KMP
👉 Логика экранов (ViewModel)
👉 Навигация между экранами
👉 Работа с сетью
👉 DI
👉 Хранение данных
👉 Строковые ресурсы
👉 Нативные инструменты (датчики, переход в другие приложения)
👉 Пример фичи (обработка push-уведомлений)

Читать (Ru)
  • 👍 20
  • 🔥 3
  • ❤ 2
  • 🥰 1
Post #1071 4.78K
Обзор актуальных инструментов шифрования в Android

В статье рассматриваются некоторые инструменты шифрования в Android, их эффективность и распространённые ошибки при их использовании.

👉 Cамостоятельное шифрование примитивами из Android SDK
👉 EncryptedFile
👉 EncryptedSharedPreferences

Читать (Ru)
  • 👍 14
  • 🤔 3
  • 🔥 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →