Sliver во Flutter, или как работает скролл
Flutter обладает большими возможностями по кастомизации экрана приложения. Например, с помощью фреймворка можно создать собственный эффект скролла элементов.
Однако для реализации кастомного скролла нужно понимать сам механизм скролла в Flutter. Во «внутренностях» фреймворка покопался Михаил Зотьев из Surf и поделился результатами в выступлении на Dart UP.
Доклад можно как посмотреть, так и почитать в виде статьи.
#flutter #доклады
Flutter обладает большими возможностями по кастомизации экрана приложения. Например, с помощью фреймворка можно создать собственный эффект скролла элементов.
Однако для реализации кастомного скролла нужно понимать сам механизм скролла в Flutter. Во «внутренностях» фреймворка покопался Михаил Зотьев из Surf и поделился результатами в выступлении на Dart UP.
Доклад можно как посмотреть, так и почитать в виде статьи.
#flutter #доклады
👍5
Разбираемся с DI в Jetpack Compose
В Compose встроен
https://youtu.be/vOpy_5I_C7k
#compose #android
В Compose встроен
CompositionLocal, который может выполнять роль DI. Но так ли он хорош, чтобы заменить Dagger 2 и другие DI-инструменты? Или же у него другое направление работы? Ответ — в видео:https://youtu.be/vOpy_5I_C7k
#compose #android
👍7💩1
Android-разработчики смогут узнать класс производительности устройств
Performance class отображает уровень производительности и общих возможностей устройства пользователя. Благодаря этому можно изменять настройки графики и функциональность приложения под определённые группы, чтобы добиться оптимальной производительности.
Информацию к классе производительности устройства на Android 11 (API level 30) и выше выдаёт новая библиотека Jetpack Core Performance (пока в альфе).
В статье можно узнать подробности о новой фиче.
#android
Performance class отображает уровень производительности и общих возможностей устройства пользователя. Благодаря этому можно изменять настройки графики и функциональность приложения под определённые группы, чтобы добиться оптимальной производительности.
Информацию к классе производительности устройства на Android 11 (API level 30) и выше выдаёт новая библиотека Jetpack Core Performance (пока в альфе).
В статье можно узнать подробности о новой фиче.
#android
👍10💩1
Интеграция Huawei Mobile Services в существующее приложение
Устройствами от Huawei пользуется существенное количество российских пользователей. Кроме того, из-за возникшего дефицита электроники в России продажи устройств Huawei за первую половину марта выросли на 300%.
Если вы задумались о публикации приложения в App Gallery, то вам будет полезен опыт ребят из hh. Они со второй попытки смогли внедрить в релизные сборки Huawei Mobile Services и собрали интересную статистику:
https://youtu.be/TSlJEUh7UY4
Однако стоит учесть, что Google Play стал присылать предупреждения разработчикам, если в их приложении встроена поддержка HMS. Поэтому будет необходимо делать две отдельные сборки под Google Play и App Gallery.
#android #hms
Устройствами от Huawei пользуется существенное количество российских пользователей. Кроме того, из-за возникшего дефицита электроники в России продажи устройств Huawei за первую половину марта выросли на 300%.
Если вы задумались о публикации приложения в App Gallery, то вам будет полезен опыт ребят из hh. Они со второй попытки смогли внедрить в релизные сборки Huawei Mobile Services и собрали интересную статистику:
https://youtu.be/TSlJEUh7UY4
Однако стоит учесть, что Google Play стал присылать предупреждения разработчикам, если в их приложении встроена поддержка HMS. Поэтому будет необходимо делать две отдельные сборки под Google Play и App Gallery.
#android #hms
👍6💩6👏1
Стоит ли публиковать больше материалов по HMS и публикации в App Gallery?
Anonymous Poll
68%
Да 👍
32%
Нет 👎
💩9😁4
Работа с клавиатурой в Jetpack Compose
Когда пользователь вводит данные в приложении, вызывается клавиатура. Однако она может перекрыть элементы интерфейса или же мешать вводу данных в нескольких полях.
Как решить проблему:
https://dev.to/tkuenneth/keyboard-handling-in-jetpack-compose-2593
#android #compose
Когда пользователь вводит данные в приложении, вызывается клавиатура. Однако она может перекрыть элементы интерфейса или же мешать вводу данных в нескольких полях.
Как решить проблему:
https://dev.to/tkuenneth/keyboard-handling-in-jetpack-compose-2593
#android #compose
👍9😁1
Передвигаем элементы в Compose без рекомпозиции
В Jetpack Compose 1.2 появится функция
Как работать с новой функцией: https://betterprogramming.pub/exploring-movablecontentof-in-jetpack-compose-6807a43047cd
#android #compose
В Jetpack Compose 1.2 появится функция
movableContentOf, которая позволяет перемещать элементы без необходимости их перекомпоновки. Например, с помощью функции можно легко ряд элементов превратить в столбец.Как работать с новой функцией: https://betterprogramming.pub/exploring-movablecontentof-in-jetpack-compose-6807a43047cd
#android #compose
🔥7👍1
Внедрение Kotlin Multiplatform Mobile: опыт QIWI
Мы не раз писали про KMM. Платформа позволяет написать бизнес-логику приложения на Kotlin и затем использовать ее на разных платформах. При этом UI-слой пишется отдельно под каждую из них.
Разработчики из QIWI попробовали технологию в деле и поделились своим опытом. Если вкратце, то технология им показалась многообещающей, но без проблем не обошлось.
Подробнее: https://habr.com/ru/company/qiwi/blog/658275/
#kmm #android #ios
Мы не раз писали про KMM. Платформа позволяет написать бизнес-логику приложения на Kotlin и затем использовать ее на разных платформах. При этом UI-слой пишется отдельно под каждую из них.
Разработчики из QIWI попробовали технологию в деле и поделились своим опытом. Если вкратце, то технология им показалась многообещающей, но без проблем не обошлось.
Подробнее: https://habr.com/ru/company/qiwi/blog/658275/
#kmm #android #ios
👍8
Как защитить Android-приложение от реверс-инжиниринга
Нельзя полностью защитить приложение от хакерских атак. Однако существуют инструменты, которые помогут существенно затруднить захват пользовательских данных со стороны клиента.
Подробнее об инструментах против реверс-инжиниринга:
https://proandroiddev.com/how-to-prevent-hackers-from-reverse-engineering-your-android-apps-2981661ab1c2
#android #безопасность
Нельзя полностью защитить приложение от хакерских атак. Однако существуют инструменты, которые помогут существенно затруднить захват пользовательских данных со стороны клиента.
Подробнее об инструментах против реверс-инжиниринга:
https://proandroiddev.com/how-to-prevent-hackers-from-reverse-engineering-your-android-apps-2981661ab1c2
#android #безопасность
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Создание кастомного индикатора загрузки в UIKit
В гайде объясняется, как реализовать собственный спиннер с помощью двух классов фреймворка СoreAnimations —
https://habr.com/ru/post/658083/
#ios #ui
В гайде объясняется, как реализовать собственный спиннер с помощью двух классов фреймворка СoreAnimations —
CAShapeLayer и CAReplicatorLayer:https://habr.com/ru/post/658083/
#ios #ui
👍13🔥3❤2👎2💩2😁1
На этой неделе прошла новость, что ориентировочно 9 мая в России запустится магазин приложений NashStore для Android. Как сообщается, его запускают в условиях, когда пользователи из России не могут совершать покупки в Google Play, а разработчики — получить выплаты.
Как думаете, приживётся ли проект? Стали бы потенциально выпускать там свои приложения в текущих условиях?
К слову, подобный проект уже существовал раньше — «Яндекс.Store». Магазин приложений предустанавливался на некоторые модели Android-устройств и проработал до августа 2020 года. Пользовались ли им когда-нибудь?
Просим в комментариях воздержаться от обсуждения политики и оскорблений участников. Мы целиком за конструктивное общение в сообществе.
#чат
Как думаете, приживётся ли проект? Стали бы потенциально выпускать там свои приложения в текущих условиях?
К слову, подобный проект уже существовал раньше — «Яндекс.Store». Магазин приложений предустанавливался на некоторые модели Android-устройств и проработал до августа 2020 года. Пользовались ли им когда-нибудь?
Просим в комментариях воздержаться от обсуждения политики и оскорблений участников. Мы целиком за конструктивное общение в сообществе.
#чат
🤮54😁13👍12💩5🤔3😢1🎉1
Cheat Sheet по шорткатам в Xcode
В одной шпаргалке собраны все основные комбинации клавиш для редактирования кода, работы с вкладками, документацией и не только. Вдохновлено англоязычной cheat sheet.
Кстати, из репозитория с проектом можно скачать PDF-версию.
#ios
В одной шпаргалке собраны все основные комбинации клавиш для редактирования кода, работы с вкладками, документацией и не только. Вдохновлено англоязычной cheat sheet.
Кстати, из репозитория с проектом можно скачать PDF-версию.
#ios
👍11💩4
This media is not supported in your browser
VIEW IN TELEGRAM
PT Application Inspector 4.0. Как выйти на уровень безопасной разработки
82% всех уязвимостей инфраструктуры содержатся в коде приложения. Каждая пятая из них грозит компании серьезными последствиями.
Для того, чтобы находить слабые места еще на стадии разработки нужен анализатор кода, такой, как PT Application Inspector. Он комбинирует технологии SAST, DAST, IAST и SCA. Встраивается в процессы компании, помогает раз и навсегда подружить ИБ и разработку.
Эксперты Positive Technologies проведут митап для разработчиков и инженеров DevOps и DevSecOps, где расскажут:
— Про методы анализа и абстрактную интерпретацию как способ повысить качество анализа
— Как посчитать выгоду DevSecOps для компании и подружить ИБ с разработкой
— Новые фичи PT Application Inspector версии 4.0
Когда: 7 апреля
Зарегистрироваться
82% всех уязвимостей инфраструктуры содержатся в коде приложения. Каждая пятая из них грозит компании серьезными последствиями.
Для того, чтобы находить слабые места еще на стадии разработки нужен анализатор кода, такой, как PT Application Inspector. Он комбинирует технологии SAST, DAST, IAST и SCA. Встраивается в процессы компании, помогает раз и навсегда подружить ИБ и разработку.
Эксперты Positive Technologies проведут митап для разработчиков и инженеров DevOps и DevSecOps, где расскажут:
— Про методы анализа и абстрактную интерпретацию как способ повысить качество анализа
— Как посчитать выгоду DevSecOps для компании и подружить ИБ с разработкой
— Новые фичи PT Application Inspector версии 4.0
Когда: 7 апреля
Зарегистрироваться
👍8🔥1
Навигация в iOS-приложении с паттерном Coordinator
За навигацию в iOS отвечает стандартный класс UIViewController. Однако с ним возникают трудности, когда нужно поменять порядок экранов, добавить новый переход или передать данные с последнего экрана на первый.
Одно из решений проблемы — использовать вместо стандартной навигации паттерн Coordinator, который задействует особый класс для логики навигации между экранами в приложении.
Существует множество готовых реализаций паттерна. Но в «СберМаркете» решили запилить свою собственную версию и рассказали о ней в статье:
https://habr.com/ru/post/654339/
#ios
За навигацию в iOS отвечает стандартный класс UIViewController. Однако с ним возникают трудности, когда нужно поменять порядок экранов, добавить новый переход или передать данные с последнего экрана на первый.
Одно из решений проблемы — использовать вместо стандартной навигации паттерн Coordinator, который задействует особый класс для логики навигации между экранами в приложении.
Существует множество готовых реализаций паттерна. Но в «СберМаркете» решили запилить свою собственную версию и рассказали о ней в статье:
https://habr.com/ru/post/654339/
#ios
👍7
Стал доступен Kotlin 1.6.20
Что появилось интересного:
— context receiver в Kotlin/JVM (пока в виде прототипа);
— объявление non-nullable generic типов (пока в бете);
— поддержка параллельной компиляции в один модуль в JVM backend;
— инкрементальная компиляция development binaries с компилятором Kotlin/JS IR;
— улучшение производительности Kotlin/Native;
— поддержка иерархической структуры для мультиплатформенных проектов (на KMM).
Подробнее об изменениях в блоге JetBrains. Обновление установится автоматически в IntelliJ IDEA и Android Studio.
#kotlin
Что появилось интересного:
— context receiver в Kotlin/JVM (пока в виде прототипа);
— объявление non-nullable generic типов (пока в бете);
— поддержка параллельной компиляции в один модуль в JVM backend;
— инкрементальная компиляция development binaries с компилятором Kotlin/JS IR;
— улучшение производительности Kotlin/Native;
— поддержка иерархической структуры для мультиплатформенных проектов (на KMM).
Подробнее об изменениях в блоге JetBrains. Обновление установится автоматически в IntelliJ IDEA и Android Studio.
#kotlin
🔥7👍5❤1
50 вопросов и ответов для подготовки к собеседованию по Swift и iOS
В статье собраны вопросы по различным темам — от теоретических вопросов до поиска ошибок в коде. Самое то потренироваться перед собеседованием на iOS-разработчика:
https://habr.com/ru/post/659169/
#ios #начинающим
В статье собраны вопросы по различным темам — от теоретических вопросов до поиска ошибок в коде. Самое то потренироваться перед собеседованием на iOS-разработчика:
https://habr.com/ru/post/659169/
#ios #начинающим
🔥11👍5❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Многопользовательская игра для рисования на Compose
В игре Stream Draw один игрок должен нарисовать изображение, а другой — отгадать, какое слово загадано. Под капотом: Jetpack Compose, корутины и Flow.
Изучить проект: https://github.com/getStream/stream-draw-android
#android #compose #ui
В игре Stream Draw один игрок должен нарисовать изображение, а другой — отгадать, какое слово загадано. Под капотом: Jetpack Compose, корутины и Flow.
Изучить проект: https://github.com/getStream/stream-draw-android
#android #compose #ui
🔥23👍5❤1
6 вакансий для мобильных разработчиков
— Android-разработчик (Middle)
— Android-разработчик (Senior)
— Android-разработчик (Beffo)
— iOS-разработчик
— iOS-разработчик (Middle)
— iOS-разработчик (Senior)
#вакансии #работа
— Android-разработчик (Middle)
— Android-разработчик (Senior)
— Android-разработчик (Beffo)
— iOS-разработчик
— iOS-разработчик (Middle)
— iOS-разработчик (Senior)
#вакансии #работа
👍2
Удобная работа со справочниками в iOS
Справочники удобно хранить в базе данных. На iOS основных инструментов для работы с базой данных три — CoreData, Realm, SQLite.
Разработчики из hh разобрали плюсы и минусы всех вариантов и рассказали, какой из них использовали в своём проекте:
https://habr.com/ru/company/hh/blog/658257/
#ios
Справочники удобно хранить в базе данных. На iOS основных инструментов для работы с базой данных три — CoreData, Realm, SQLite.
Разработчики из hh разобрали плюсы и минусы всех вариантов и рассказали, какой из них использовали в своём проекте:
https://habr.com/ru/company/hh/blog/658257/
#ios
👍7
Пишем первый UI-тест на Android
Фреймворк Espresso используется для тестирования UI Android-приложения на реальном устройстве или эмуляторе. Начать с ним работу поможет пошаговый гайд по созданию первого UI-теста:
https://habr.com/ru/company/otus/blog/472372/
#android #тестирование #начинающим
Фреймворк Espresso используется для тестирования UI Android-приложения на реальном устройстве или эмуляторе. Начать с ним работу поможет пошаговый гайд по созданию первого UI-теста:
https://habr.com/ru/company/otus/blog/472372/
#android #тестирование #начинающим
👍10🔥5