Channel: StartAndroid
Стать сотрудником Яндекса быстрее и проще, чем кажется. Участвуйте в днях быстрого найма: решите тестовое, пройдите несколько секций собеседования и получите офер за несколько дней.
Ближайшее Fast Track мероприятия:
• 20–21 апреля — Fast Track для Android- и iOS-разработчиков, офер за 2 дня в команду Вертикалей.
Зарегистрироваться
#реклама
Ближайшее Fast Track мероприятия:
• 20–21 апреля — Fast Track для Android- и iOS-разработчиков, офер за 2 дня в команду Вертикалей.
Зарегистрироваться
#реклама
Accessibility Scanner в Android
Исследования показывают, что максимальный процент выявленных проблем с accessibility составляет 40-50%. Поэтому ручное тестирование всегда необходимо. Но для этих 40-57% есть несколько инструментов, которые можно использовать. Один из них — Accessibility Scanner, и в этой статье я расскажу о том, как протестировать с его помощью ваше приложение. Давайте начнем с того, что это такое.
#android #accessibility
https://habr.com/ru/articles/805281
Исследования показывают, что максимальный процент выявленных проблем с accessibility составляет 40-50%. Поэтому ручное тестирование всегда необходимо. Но для этих 40-57% есть несколько инструментов, которые можно использовать. Один из них — Accessibility Scanner, и в этой статье я расскажу о том, как протестировать с его помощью ваше приложение. Давайте начнем с того, что это такое.
#android #accessibility
https://habr.com/ru/articles/805281
Хабр
Accessibility Scanner в Android
Я — Денис, Middle Android-разработчик в «Лайв Тайпинге». В этой статье я расскажу об инструменте тестирования accessibility в Android приложениях. Введение Исследования показывают, что максимальный...
Подборка курсов для изучения 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
#kotlin #course
https://blog.jetbrains.com/education/2024/04/04/kotlin-learning-guide/
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
#kotlin #course
https://blog.jetbrains.com/education/2024/04/04/kotlin-learning-guide/
The JetBrains Blog
A Comprehensive Kotlin Learning Guide for All Levels | The JetBrains Academy Blog
Use the flow chart to get an overview of all our Kotlin learning content and choose your next course.
Давайте в общих чертах рассмотрим вопросы взлома и защиты Android-приложений.
В рамках статьи нас интересуют сами процессы взлома и защиты, а не конкретные методики работы с конкретными инструментами. Поэтому разберёмся с этими процессами и постараемся сделать выводы. Чтобы читать было интереснее, я решил попеременно ставить себя и на место нападающего, и на место защищающего приложение человека. Что-то вроде шахмат: сначала ход делает нападающий, а затем защищающийся. Пока кто-то не победит. Пройдём путь, постепенно наращивая сложность, от простого вроде HTTPS — к более сложному, вроде обфускации и деобфускации, изменению поведения. И под конец перейдём к C++ и просмотру его Assembler кода.
#android #security
https://habr.com/ru/companies/cian/articles/804835/
В рамках статьи нас интересуют сами процессы взлома и защиты, а не конкретные методики работы с конкретными инструментами. Поэтому разберёмся с этими процессами и постараемся сделать выводы. Чтобы читать было интереснее, я решил попеременно ставить себя и на место нападающего, и на место защищающего приложение человека. Что-то вроде шахмат: сначала ход делает нападающий, а затем защищающийся. Пока кто-то не победит. Пройдём путь, постепенно наращивая сложность, от простого вроде HTTPS — к более сложному, вроде обфускации и деобфускации, изменению поведения. И под конец перейдём к C++ и просмотру его Assembler кода.
#android #security
https://habr.com/ru/companies/cian/articles/804835/
Хабр
Игра в безопасность Android-приложений
Давайте в общих чертах рассмотрим вопросы взлома и защиты Android-приложений. В рамках статьи нас интересуют сами процессы взлома и защиты, а не конкретные методики работы с конкретными...
Первая бета Android 15, список изменений
- Edge-to-edge
- Smoother NFC experiences - part 2
- Inter-character justification
- App archiving
- App-managed profiling
- Better Braille
- Key management for end-to-end encryption
- Secured background activity launches
- App compatibility
#android
https://commonsware.com/blog/2024/04/13/random-musings-android-15-beta-1.html
https://android-developers.googleblog.com/2024/04/the-first-beta-of-android-15.html
- Edge-to-edge
- Smoother NFC experiences - part 2
- Inter-character justification
- App archiving
- App-managed profiling
- Better Braille
- Key management for end-to-end encryption
- Secured background activity launches
- App compatibility
#android
https://commonsware.com/blog/2024/04/13/random-musings-android-15-beta-1.html
https://android-developers.googleblog.com/2024/04/the-first-beta-of-android-15.html
CommonsWare: Android App Development Books
Random Musings on the Android 15 Beta 1
We already have an Android 15 beta! Mark examines what's inside, particularly focusing on things that Google is not (yet) talking about.
Неважно, опытный вы программист или новичок — попробуйте себя в разработке приложения на Flutter!
⚠️Ждем вас на бесплатном практическом уроке «Создаем многопользовательскую игру наподобие "Имаджинариум" с искусственным интеллектом на Flutter» от OTUS и Дмитрия Золотова — Flutter+Kotlin Developer в Yandex. На вебинаре мы:
- рассмотрим несколько подходов к взаимодействию мобильных приложений;
- добавим к игре поддержку простого бота на основе gemini AI;
- используем генеративный ИИ для создания изображений;
- создадим готовую игру с возможностью взаимодействия между пользователями.
Встречаемся 17 апреля в 20:00 мск в рамках курса «Flutter Mobile Developer». Все участники вебинара получат специальную цену на обучение и консультацию от менеджеров OTUS!
👉 Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cwdBjD
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚠️Ждем вас на бесплатном практическом уроке «Создаем многопользовательскую игру наподобие "Имаджинариум" с искусственным интеллектом на Flutter» от OTUS и Дмитрия Золотова — Flutter+Kotlin Developer в Yandex. На вебинаре мы:
- рассмотрим несколько подходов к взаимодействию мобильных приложений;
- добавим к игре поддержку простого бота на основе gemini AI;
- используем генеративный ИИ для создания изображений;
- создадим готовую игру с возможностью взаимодействия между пользователями.
Встречаемся 17 апреля в 20:00 мск в рамках курса «Flutter Mobile Developer». Все участники вебинара получат специальную цену на обучение и консультацию от менеджеров OTUS!
👉 Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cwdBjD
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Действительно ли RxJava так плоха, что ей не осталось места в наших приложениях? Используется ли она сейчас на проектах? Есть ли смысл изучать RxJava новичку?
#android #rxjava
https://habr.com/ru/articles/807925/
#android #rxjava
https://habr.com/ru/articles/807925/
Хабр
RxJava — всё?
Статья написана при поддержке канала Mobile Developer . В “далеком” 2018 г. разработчик компании EPAM Systems Владимир Иванов провел опрос среди своих подписчиков в Twitter, пытаясь узнать, какой...
Пример использования нового Power Profiler. Он отображает уровень потребления энергии различными системными компонентами (WLAN, CPU, Memory). Это дает возможность наглядно увидеть, насколько можно снизить энергопотребление, уменьшив качество воспроизводимого видео.
#android #androidstudio #performance #profiler
https://android-developers.googleblog.com/2024/04/how-to-effectively-ab-test-power-consumption-for-your-android-app-features.html
#android #androidstudio #performance #profiler
https://android-developers.googleblog.com/2024/04/how-to-effectively-ab-test-power-consumption-for-your-android-app-features.html
This media is not supported in your browser
VIEW IN TELEGRAM
Новый Compose урок по теме - Input.
Разбираемся, как событие проходит через компоненты 3 раза, и как это можно использовать.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Разбираемся, как событие проходит через компоненты 3 раза, и как это можно использовать.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
❓Хотите повысить качество и читаемость своего кода в мобильной разработке? Присмотритесь к Flutter и его возможностям
Как взаимодействовать с JS-библиотеками и запускать нативный Kotlin/Swift-код без использования платформенных каналов и FFI?
Все это и даже больше обсудим на открытом практическом уроке от OTUS. Спикер Дмитрий Золотов — Flutter+Kotlin Developer в Yandex.
На вебинаре разберем:
- Native assets как альтернативу Platform Channels / FFI для мобильной разработки;
- взаимодействие с Java-кодом через библиотеки jni / jnigen;
- проблему взаимодействия с существующими JS-модулями в Flutter Web и новые библиотеки для доступа к JS-объектам;
- примеры использования нативных библиотек для задач высокопроизводительных вычислений во Flutter-приложениях.
Встречаемся 24 апреля в 20:00 мск в преддверии старта курса «Flutter Mobile Developer». Все участники вебинара получат специальную цену на обучение и персональную консультацию от менеджеров OTUS!
👉 Посетите бесплатный урок: https://otus.pw/dWydD/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как взаимодействовать с JS-библиотеками и запускать нативный Kotlin/Swift-код без использования платформенных каналов и FFI?
Все это и даже больше обсудим на открытом практическом уроке от OTUS. Спикер Дмитрий Золотов — Flutter+Kotlin Developer в Yandex.
На вебинаре разберем:
- Native assets как альтернативу Platform Channels / FFI для мобильной разработки;
- взаимодействие с Java-кодом через библиотеки jni / jnigen;
- проблему взаимодействия с существующими JS-модулями в Flutter Web и новые библиотеки для доступа к JS-объектам;
- примеры использования нативных библиотек для задач высокопроизводительных вычислений во Flutter-приложениях.
Встречаемся 24 апреля в 20:00 мск в преддверии старта курса «Flutter Mobile Developer». Все участники вебинара получат специальную цену на обучение и персональную консультацию от менеджеров OTUS!
👉 Посетите бесплатный урок: https://otus.pw/dWydD/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
В третьей части серии статей о ViewModel Best Practices обсуждают следующие пункты:
- Try not to import Android dependencies in the ViewModels:
- Lazily inject dependencies in the constructor.
#android #viewmodel
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-3-%EF%B8%8F3%EF%B8%8F%E2%83%A3-1833ce3ddd2b
- Try not to import Android dependencies in the ViewModels:
- Lazily inject dependencies in the constructor.
#android #viewmodel
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-3-%EF%B8%8F3%EF%B8%8F%E2%83%A3-1833ce3ddd2b
DI фреймворки бывают двух видов: те, что строят свой граф зависимостей во время компиляции (compile time фреймворки), и те, которые делают это уже при выполнении кода (runtime фреймворки).
Kodein — типичный представитель runtime фреймворков. Это значит, что о пропущенной зависимости вы узнаете непосредственно в процессе работы приложения, что может стать неприятным сюрпризом. Только представьте себе: вы пропустили на регрессе какой-то кейс, и у вас краш в продакшене из-за DI! Это же настоящий кошмар!
Но неужели нам придётся отказываться от Kodein или других runtime фреймворков? Что можно сделать, чтобы сделать их более надёжными? Есть ответ! Мы переведём наш DI из разряда runtime проверок в разряд deploy time проверок.
Это третья статья из цикла материалов про Kodein DI для Android
#android #kodein #di
https://habr.com/ru/companies/dododev/articles/807969/
Kodein — типичный представитель runtime фреймворков. Это значит, что о пропущенной зависимости вы узнаете непосредственно в процессе работы приложения, что может стать неприятным сюрпризом. Только представьте себе: вы пропустили на регрессе какой-то кейс, и у вас краш в продакшене из-за DI! Это же настоящий кошмар!
Но неужели нам придётся отказываться от Kodein или других runtime фреймворков? Что можно сделать, чтобы сделать их более надёжными? Есть ответ! Мы переведём наш DI из разряда runtime проверок в разряд deploy time проверок.
Это третья статья из цикла материалов про Kodein DI для Android
#android #kodein #di
https://habr.com/ru/companies/dododev/articles/807969/
Хабр
Kodein DI для Android. Целостность графа и тесты на DI
DI фреймворки бывают двух видов: те, что строят свой граф зависимостей во время компиляции (compile time фреймворки), и те, которые делают это уже при выполнении кода (runtime фреймворки). Kodein —...
Статья о создании своего плагина в Android Studio, часть 1.
Судя по всему, в итоге автор собирается создать плагин для работы с ADB
#android #androidstudio #plugin
https://medium.com/@farhaddeveloper98/write-androidstudio-plugin-step-by-step-part1-create-simple-action-toolwindow-with-custom-ui-01aeefceec94
Судя по всему, в итоге автор собирается создать плагин для работы с ADB
#android #androidstudio #plugin
https://medium.com/@farhaddeveloper98/write-androidstudio-plugin-step-by-step-part1-create-simple-action-toolwindow-with-custom-ui-01aeefceec94
Medium
Write AndroidStudio Plugin Step By Step, Part1: Create Simple Action & ToolWindow with Custom UI.
Crafting Your First Android Studio Plugin
Статья о производительности нового K2 компилятора. Сравнивают сборки на Kotlin 1.9.23 и Kotlin 2.0.0, версия Gradle - 8.5.
#android #kotlin #performance
https://blog.jetbrains.com/kotlin/2024/04/k2-compiler-performance-benchmarks-and-how-to-measure-them-on-your-projects/
#android #kotlin #performance
https://blog.jetbrains.com/kotlin/2024/04/k2-compiler-performance-benchmarks-and-how-to-measure-them-on-your-projects/
The JetBrains Blog
K2 Compiler Performance Benchmarks and How to Measure Them on Your Projects | The Kotlin Blog
Dive into the K2 compiler’s performance benchmarks and learn how to measure performance in your own projects.
📱 Тест по знанию Git 📱
Ответьте на 20 вопросов и проверьте, какие навыки, необходимые для мобильной разработки, есть у вас и на сколько готовы к обучению на курсе — «Flutter Mobile Developer».
За 5 месяцев курса вы:
- Досконально изучите программирование на Dart, применение platform-specific code и создание анимации с помощью Skia
- Разовьёте и научитесь применять фреймвоки для работы с состоянием приложения: Bloc, Redux, MobX
- Создадите свои аналоги WhatsApp и Telegram, CoinMarketCap, Todoist
Время прохождения теста ограниченно 30 минут
👉 ПРОЙТИ ТЕСТ — https://otus.pw/eW1m/
💣 Пройдете тест, получите спец. цену на основной курс, и курс по Git в подарок.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Ответьте на 20 вопросов и проверьте, какие навыки, необходимые для мобильной разработки, есть у вас и на сколько готовы к обучению на курсе — «Flutter Mobile Developer».
За 5 месяцев курса вы:
- Досконально изучите программирование на Dart, применение platform-specific code и создание анимации с помощью Skia
- Разовьёте и научитесь применять фреймвоки для работы с состоянием приложения: Bloc, Redux, MobX
- Создадите свои аналоги WhatsApp и Telegram, CoinMarketCap, Todoist
Время прохождения теста ограниченно 30 минут
👉 ПРОЙТИ ТЕСТ — https://otus.pw/eW1m/
💣 Пройдете тест, получите спец. цену на основной курс, и курс по Git в подарок.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Подробная иллюстрированная статья про Kotlin Variance модификаторы In и Out
#kotlin
https://typealias.com/start/kotlin-variance/
#kotlin
https://typealias.com/start/kotlin-variance/
Dave Leeds on Kotlin
Generic Variance
Create subtypes from your parameterized types using Kotlin's generic variance. In this chapter, we'll learn about covariance, contravariance, and how they can be applied in declaration-site variance and use-site variance, based on three simple rules of subtypes.
Стабильная Android Studio Jellyfish
Develop
- Gemini in Android Studio
- Modular login permissions
Debug
- Android Device Streaming
- AQI Crashlytics: Multi-events, keys, and logs
- Embedded Layout Inspector
Optimize
- App Links Assistant: Web associations file support
- Baseline Profile installation
Quality Improvements
- 900+ bugs addressed
- Memory errors down by 40%
IntelliJ Platform Update
- Latest Java 21 feature support
- Run to Cursor inlay option
- More 2023.3 features
#androidstudio
https://android-developers.googleblog.com/2024/04/android-studio-jellyfish-is-stable.html
Develop
- Gemini in Android Studio
- Modular login permissions
Debug
- Android Device Streaming
- AQI Crashlytics: Multi-events, keys, and logs
- Embedded Layout Inspector
Optimize
- App Links Assistant: Web associations file support
- Baseline Profile installation
Quality Improvements
- 900+ bugs addressed
- Memory errors down by 40%
IntelliJ Platform Update
- Latest Java 21 feature support
- Run to Cursor inlay option
- More 2023.3 features
#androidstudio
https://android-developers.googleblog.com/2024/04/android-studio-jellyfish-is-stable.html
This media is not supported in your browser
VIEW IN TELEGRAM
Новый Compose урок по теме - Input.
Разбираемся, как под капотом работают Indication и InteractionSource.
Создаем различные кастомные визуальные индикации клика, в том числе и свой разноцветный Ripple.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Разбираемся, как под капотом работают Indication и InteractionSource.
Создаем различные кастомные визуальные индикации клика, в том числе и свой разноцветный Ripple.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Android Studio теперь будет иметь два основных релиза.
Первый (platform update) отвечает за обновление IntelliJ IDEA. С точки зрения версии, будут обновлены первые два числа - 202X.X.1
Второй (feature drop) релиз отвечает за фичи, связанные с Android разработкой. Это третье число - 2024.1.X
#androidstudio
https://android-developers.googleblog.com/2024/05/more-frequent-focused-updates-for-android-studio.html
Первый (platform update) отвечает за обновление IntelliJ IDEA. С точки зрения версии, будут обновлены первые два числа - 202X.X.1
Второй (feature drop) релиз отвечает за фичи, связанные с Android разработкой. Это третье число - 2024.1.X
#androidstudio
https://android-developers.googleblog.com/2024/05/more-frequent-focused-updates-for-android-studio.html
Android Developers Blog
More frequent, focused updates for Android Studio
We're ensuring that important updates to the IntelliJ IDEA platform reach the Android Studio Stable channel more frequently for increased quality.
Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2.
По замерам JB, K2 ускоряет компиляцию на 94% (это не в 16 раз ускорение, а чуть меньше чем в 2). Также он позволит ускорить разработку новых языковых фич и унифицировать все платформы, предоставляя улучшенную архитектуру для мультиплатформенных проектов.
Но мало кто погружался в то, как работает K2, и чем он отличается от K1.
Эта статья более освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания, что же JB улучшают под капотом, и как это работает.
#kotlin #compiler
https://habr.com/ru/companies/kts/articles/813085/
P.S.
Часов через 7 начнется Google I/O 2024
По замерам JB, K2 ускоряет компиляцию на 94% (это не в 16 раз ускорение, а чуть меньше чем в 2). Также он позволит ускорить разработку новых языковых фич и унифицировать все платформы, предоставляя улучшенную архитектуру для мультиплатформенных проектов.
Но мало кто погружался в то, как работает K2, и чем он отличается от K1.
Эта статья более освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания, что же JB улучшают под капотом, и как это работает.
#kotlin #compiler
https://habr.com/ru/companies/kts/articles/813085/
P.S.
Часов через 7 начнется Google I/O 2024
Хабр
Как новый компилятор K2 ускоряет компиляцию Kotlin на 94%
Привет, меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS. Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2. По замерам...
HTML Embed Code: