Оптимизация Android-приложений для больших экранов
Большие раскладушки, планшеты и настольные устройства, такие как Chromebooks — с каждым годом становится все больше Android-устройств с большим экраном.
Появление таких устройств заставляет разработчика задуматься о новых вещах. Например:
— Может ли пользователь дотянуться до наиболее важных элементов управления при использовании вашего приложения двумя руками на планшете?
— Все ли функции вашего приложения работают с клавиатурой и мышью?
— Имеет ли предварительный просмотр камеры вашего приложения правильную ориентацию независимо от положения устройства?
В статье от разработчиков Android рассматриваются вопросы оптимизации Android-приложений для больших экранов:
https://android-developers.googleblog.com/2023/05/optimizing-your-android-app-for-large-screens.html
#android
Большие раскладушки, планшеты и настольные устройства, такие как Chromebooks — с каждым годом становится все больше Android-устройств с большим экраном.
Появление таких устройств заставляет разработчика задуматься о новых вещах. Например:
— Может ли пользователь дотянуться до наиболее важных элементов управления при использовании вашего приложения двумя руками на планшете?
— Все ли функции вашего приложения работают с клавиатурой и мышью?
— Имеет ли предварительный просмотр камеры вашего приложения правильную ориентацию независимо от положения устройства?
В статье от разработчиков Android рассматриваются вопросы оптимизации Android-приложений для больших экранов:
https://android-developers.googleblog.com/2023/05/optimizing-your-android-app-for-large-screens.html
#android
Что нового ожидается в Dart 3
Выход третьей версии языка Dart ожидается в середине 2023 года. Dart 3 — самое мажорное обновление языка со времён Null Safety: оно изменит многое в том, как мы пишем код и какие библиотеки используем.
Статья о новых фичах, их использовании на практике и как они изменят способ взаимодействия с языком:
https://habr.com/ru/companies/surfstudio/articles/733532/
#dart
Выход третьей версии языка Dart ожидается в середине 2023 года. Dart 3 — самое мажорное обновление языка со времён Null Safety: оно изменит многое в том, как мы пишем код и какие библиотеки используем.
Статья о новых фичах, их использовании на практике и как они изменят способ взаимодействия с языком:
https://habr.com/ru/companies/surfstudio/articles/733532/
#dart
Как правильно оценить задачу?
Заказчики любят предсказуемость. Им нравится заранее знать, сколько будет стоить проект и сколько времени это займет. Поэтому для разработчика важно уметь давать правильную оценку задачам.
В видео рассказывается как грамотно анализировать требования заказчика и преобразовывать их в технические задачи для успешной реализации, о методах оценки времени на выполнение задач и о типичных ошибках:
https://www.youtube.com/watch?v=o_j3OceGwJU
#советы
Заказчики любят предсказуемость. Им нравится заранее знать, сколько будет стоить проект и сколько времени это займет. Поэтому для разработчика важно уметь давать правильную оценку задачам.
В видео рассказывается как грамотно анализировать требования заказчика и преобразовывать их в технические задачи для успешной реализации, о методах оценки времени на выполнение задач и о типичных ошибках:
https://www.youtube.com/watch?v=o_j3OceGwJU
#советы
YouTube
Правильно оцениваем задачи. Топовые ошибки программистов / Мобильный разработчик
Привет, друзья! В этом видео я, опытный мобильный разработчик и ваш любимый блоггер, расскажу о том, как правильно оценивать задачи в разработке мобильных приложений и какие топовые ошибки программистов следует избегать.
В этом эпизоде вы узнаете:
👉 Важность…
В этом эпизоде вы узнаете:
👉 Важность…
Flutter: как запретить запись экрана и скриншоты в iOS & Android
Если по каким-то причинам вашему приложению понадобится функция запрета записи экрана или запрет на создание скриншотов, то для Android SDK можно воспользоваться официальным APi, но в случае iOS всё сложнее.
Статья на примерах показывает, как реализовать этот функционал только нативным кодом на обеих платформах:
https://medium.com/litslink/flutter-preventing-screenshots-and-screen-recording-in-the-app-3e6f55d05ee3
#flutter #ios #android
Если по каким-то причинам вашему приложению понадобится функция запрета записи экрана или запрет на создание скриншотов, то для Android SDK можно воспользоваться официальным APi, но в случае iOS всё сложнее.
Статья на примерах показывает, как реализовать этот функционал только нативным кодом на обеих платформах:
https://medium.com/litslink/flutter-preventing-screenshots-and-screen-recording-in-the-app-3e6f55d05ee3
#flutter #ios #android
This media is not supported in your browser
VIEW IN TELEGRAM
Android: создание кольцевой диаграммы
Наверняка каждый разработчик задумывался над созданием CustomView без использования сторонних библиотек. Собственные компоненты позволяют создавать уникальные интерфейсы приложений, а могут быть просто неплохим дополнением к собственному портфолио.
Одним из самых популярных примеров реализации CustomView являются диаграммы и графики. На Хабре вышла статья с интересным примером реализации кольцевой диаграммы для отображения статистики на Kotlin:
https://habr.com/ru/articles/730924/
#android
Наверняка каждый разработчик задумывался над созданием CustomView без использования сторонних библиотек. Собственные компоненты позволяют создавать уникальные интерфейсы приложений, а могут быть просто неплохим дополнением к собственному портфолио.
Одним из самых популярных примеров реализации CustomView являются диаграммы и графики. На Хабре вышла статья с интересным примером реализации кольцевой диаграммы для отображения статистики на Kotlin:
https://habr.com/ru/articles/730924/
#android
Цветовые схемы — от Figma до реализации дизайна на Flutter
Выбор цветовой гаммы мобильного приложения — задача не только для дизайнеров, но и для мобильных разработчиков. Понимание нюансов и цветовых схем в Material Design может значительно улучшить визуализацию приложения и опыт пользователя.
В этой статье как раз и разбираются все эти аспекты для приложений на Flutter. Материал может быть интересен и для Android-разработчиков, кто работает с Material 2 и Material 3:
https://infinum.com/blog/flutter-color-schemes/
#flutter #google
Выбор цветовой гаммы мобильного приложения — задача не только для дизайнеров, но и для мобильных разработчиков. Понимание нюансов и цветовых схем в Material Design может значительно улучшить визуализацию приложения и опыт пользователя.
В этой статье как раз и разбираются все эти аспекты для приложений на Flutter. Материал может быть интересен и для Android-разработчиков, кто работает с Material 2 и Material 3:
https://infinum.com/blog/flutter-color-schemes/
#flutter #google
Jetpack Compose: отслеживание действий пользователя
В статье рассматривается, как настроить:
— обнаружение движения скролла, свайпа и нажатий,
— отслеживание UI-элементов, с которым взаимодействует пользователь,
— генерацию соответствующего breadcrumb по идентификатору элемента:
https://tprg.ru/CKOQ
#android #compose
В статье рассматривается, как настроить:
— обнаружение движения скролла, свайпа и нажатий,
— отслеживание UI-элементов, с которым взаимодействует пользователь,
— генерацию соответствующего breadcrumb по идентификатору элемента:
https://tprg.ru/CKOQ
#android #compose
ImageRenderer в SwiftUI: преобразование UIView в изображение
ImageRenderer предоставляет простой в использовании API, позволяющий экспортировать иерархию Swift UIView в виде изображения или PDF-файла. Если пользователю необходимо экспортировать данные из приложения, то с помощью ImageRenderer это стало сделать проще.
Также можно настроить несколько параметров, влияющих на конечный результат экспортируемого изображения: масштаб, размер и цветовой режим. Примеры реализации — здесь:
https://swiftwithmajid.com/2023/04/18/imagerenderer-in-swiftui/
#ios #swift
ImageRenderer предоставляет простой в использовании API, позволяющий экспортировать иерархию Swift UIView в виде изображения или PDF-файла. Если пользователю необходимо экспортировать данные из приложения, то с помощью ImageRenderer это стало сделать проще.
Также можно настроить несколько параметров, влияющих на конечный результат экспортируемого изображения: масштаб, размер и цветовой режим. Примеры реализации — здесь:
https://swiftwithmajid.com/2023/04/18/imagerenderer-in-swiftui/
#ios #swift
Основатель «Типичного программиста» в авторском канале рассказывает с чего начинался Tproger (спойлер: с мемов): @nostoppers
Кроме предпринимательства Алексей занимается менторингом, консультирует фаундеров стартапов, помогает бизнесам расти, а людям экономить время на достижение своих целей. В своём канале даёт советы по личной эффективности, рассуждает про бизнес, программирование, медиа и другие темы.
Несколько примеров постов:
— Есть идея по стартапу. Что дальше?
— Как быть с задачами, которые не делаются?
— Неочевидные правила Daily standup
— Пробежки как способ развития бизнеса
— Правила проведения демо разработки
Кроме предпринимательства Алексей занимается менторингом, консультирует фаундеров стартапов, помогает бизнесам расти, а людям экономить время на достижение своих целей. В своём канале даёт советы по личной эффективности, рассуждает про бизнес, программирование, медиа и другие темы.
Несколько примеров постов:
— Есть идея по стартапу. Что дальше?
— Как быть с задачами, которые не делаются?
— Неочевидные правила Daily standup
— Пробежки как способ развития бизнеса
— Правила проведения демо разработки
Гибридная разработка мобильных приложений
Гибридная разработка — это разработка с помощью распространенных языков программирования, с использованием веб-технологий, которые используются при создании сайта. Подход включает в себя использование кроссплатформенных, нативных методов и использование фреймворков.
В статье — о плюсах и минусах гибридной разработки и о том, когда такой подход стоит использовать:
https://appfox.ru/blog/gibridnaya-razrabotka/
#разработка
Гибридная разработка — это разработка с помощью распространенных языков программирования, с использованием веб-технологий, которые используются при создании сайта. Подход включает в себя использование кроссплатформенных, нативных методов и использование фреймворков.
В статье — о плюсах и минусах гибридной разработки и о том, когда такой подход стоит использовать:
https://appfox.ru/blog/gibridnaya-razrabotka/
#разработка
Dart: ужасный, но популярный
В комментариях к посту о новых возможностях Dart 3 задали вопрос:
— За что не любят Dart?
В статье разработчик высказывает своё субъективное мнение о том, почему Dart не нужен. У вас другое мнение? Поделитесь в комментах!
https://towardsdev.com/dart-a-terrible-language-and-a-huge-marketing-success-ee42395ef51e
#dart
В комментариях к посту о новых возможностях Dart 3 задали вопрос:
— За что не любят Dart?
В статье разработчик высказывает своё субъективное мнение о том, почему Dart не нужен. У вас другое мнение? Поделитесь в комментах!
https://towardsdev.com/dart-a-terrible-language-and-a-huge-marketing-success-ee42395ef51e
#dart
Что нового в Jetpack и Jetpack Compose
10 мая в Маунтин-Вью в Калифорнии началась ежегодная конференция Google I/O 2023. Разработчики OS Android рассказали об обновлениях в Jetpack и Jetpack Compose.
В материале разработчики рассказывают об оптимизации производительности приложений, обновлениях ключевых библиотек, и о библиотеках UI, в том числе Compose:
https://android-developers.googleblog.com/2023/05/whats-new-in-jetpack-io-2023.html
Более подробно об обновлениях в Jetpack Compose в статье:
https://android-developers.googleblog.com/2023/05/whats-new-in-jetpack-compose.html
#jetpack #compose
10 мая в Маунтин-Вью в Калифорнии началась ежегодная конференция Google I/O 2023. Разработчики OS Android рассказали об обновлениях в Jetpack и Jetpack Compose.
В материале разработчики рассказывают об оптимизации производительности приложений, обновлениях ключевых библиотек, и о библиотеках UI, в том числе Compose:
https://android-developers.googleblog.com/2023/05/whats-new-in-jetpack-io-2023.html
Более подробно об обновлениях в Jetpack Compose в статье:
https://android-developers.googleblog.com/2023/05/whats-new-in-jetpack-compose.html
#jetpack #compose
Гибридная разработка на практике: Flutter и SvelteKit WebViews
Вчера у нас был пост о том, что такое гибридная разработка.
Сегодня перейдём к практике.
В статье подробно рассматривается интеграция SvelteKit WebViews с мобильным приложением на Flutter.
Вы узнаете:
— как настроить WebView во Flutter;
— как реализовать app bridge в SvelteKit;
— как отправлять сообщения между Flutter и SvelteKit.
#flutter #svelte
Вчера у нас был пост о том, что такое гибридная разработка.
Сегодня перейдём к практике.
В статье подробно рассматривается интеграция SvelteKit WebViews с мобильным приложением на Flutter.
Вы узнаете:
— как настроить WebView во Flutter;
— как реализовать app bridge в SvelteKit;
— как отправлять сообщения между Flutter и SvelteKit.
#flutter #svelte
Все видео Google I/O 2023
10 мая прошла ежегодная конференция компании Google, где презентовали новые гаджеты и обновления. Большинство изменений связано с искусственным интеллектом.
Узнать что нового в платформе, о разработке производительных и качественных приложений, об инструментах для создания приложений для различных устройств можно по ссылке (35 видео):
https://www.youtube.com/playlist?list=PLWz5rJ2EKKc85Xna4Q3Fw79OP_3D1JaJW
#android
10 мая прошла ежегодная конференция компании Google, где презентовали новые гаджеты и обновления. Большинство изменений связано с искусственным интеллектом.
Узнать что нового в платформе, о разработке производительных и качественных приложений, об инструментах для создания приложений для различных устройств можно по ссылке (35 видео):
https://www.youtube.com/playlist?list=PLWz5rJ2EKKc85Xna4Q3Fw79OP_3D1JaJW
#android
Двухфакторная аутентификация с помощью Java Card
Java Card — это технология программного обеспечения, которая позволяет безопасно запускать приложения (апплеты) на базе Java на смарт-картах и, в более широком смысле, на аналогичных безопасных устройствах с малым объемом памяти.
В статье разработчик рассказывает про свой опыт внедрения двухфакторной аутентификации с помощью Java Card для мобильного приложения на базе Android:
https://habr.com/ru/articles/734516/
#android #java
Java Card — это технология программного обеспечения, которая позволяет безопасно запускать приложения (апплеты) на базе Java на смарт-картах и, в более широком смысле, на аналогичных безопасных устройствах с малым объемом памяти.
В статье разработчик рассказывает про свой опыт внедрения двухфакторной аутентификации с помощью Java Card для мобильного приложения на базе Android:
https://habr.com/ru/articles/734516/
#android #java
5 инструментов для iOS-разработчика
У каждого разработчика есть свой набор программ, которые он использует каждый день. Ниже 5 инструментов, которые можно использовать в рабочем процессе:
1. Cleaner for Xcode
Это приложение поможет удалить старые файлы, оставшиеся после обновления до новой версии Xcode. Оно также может очистить все производные данные и кэши и освободить место на диске.
2. Rectangle
Rectangle, как и его предшественник Spectacle, улучшает управление окнами с помощью сочетаний клавиш и областей привязки.
3. SF Symbols
С помощью SF Symbols вы можете включать в свои приложения различные пиктограммы. Самое приятное то, что библиотека постоянно пополняется, поэтому у вас всегда будут свежие иконки для работы.
4. Sigma
Sigma — плагин для Figma, который автоматически генерирует код SwiftUI на основе ваших проектов. Этот плагин экономит время и может упростить процесс проектирования и разработки.
5. Amphetamine
С этим всё просто. Amphetamine не позволяет вашему Macbook заснуть, что бывает полезно во время презентаций или когда вы работаете без подключения ноутбука к источнику питания.
#ios
У каждого разработчика есть свой набор программ, которые он использует каждый день. Ниже 5 инструментов, которые можно использовать в рабочем процессе:
1. Cleaner for Xcode
Это приложение поможет удалить старые файлы, оставшиеся после обновления до новой версии Xcode. Оно также может очистить все производные данные и кэши и освободить место на диске.
2. Rectangle
Rectangle, как и его предшественник Spectacle, улучшает управление окнами с помощью сочетаний клавиш и областей привязки.
3. SF Symbols
С помощью SF Symbols вы можете включать в свои приложения различные пиктограммы. Самое приятное то, что библиотека постоянно пополняется, поэтому у вас всегда будут свежие иконки для работы.
4. Sigma
Sigma — плагин для Figma, который автоматически генерирует код SwiftUI на основе ваших проектов. Этот плагин экономит время и может упростить процесс проектирования и разработки.
5. Amphetamine
С этим всё просто. Amphetamine не позволяет вашему Macbook заснуть, что бывает полезно во время презентаций или когда вы работаете без подключения ноутбука к источнику питания.
#ios
Что нового в Kotlin для Android?
На конференции Google I/O 2023 были представлены новинки Kotlin.
Большая статья, в которой подробно разбираются эти обновления, с комментариями и дополнениями мобильного разработчика:
https://habr.com/ru/companies/usetech/articles/734338/
#kotlin #android
На конференции Google I/O 2023 были представлены новинки Kotlin.
Большая статья, в которой подробно разбираются эти обновления, с комментариями и дополнениями мобильного разработчика:
https://habr.com/ru/companies/usetech/articles/734338/
#kotlin #android
Что такое Compose Multiplatform?
На сегодняшний день есть два основных UI-фреймворка, которые позволяют запускать один и тот же UI на разных платформах и широко представлены на рынке: React Native и Flutter.
Но статья не о них, а об удобном и мощном инструменте мобильной и десктопной разработки — Compose Multiplatform, приложения на котором можно запускать почти где угодно и на чем угодно — Android, iOS, Windows, Linux, MacOS и в браузере:
https://habr.com/ru/companies/timeweb/articles/734818/
#compose #kotlin
На сегодняшний день есть два основных UI-фреймворка, которые позволяют запускать один и тот же UI на разных платформах и широко представлены на рынке: React Native и Flutter.
Но статья не о них, а об удобном и мощном инструменте мобильной и десктопной разработки — Compose Multiplatform, приложения на котором можно запускать почти где угодно и на чем угодно — Android, iOS, Windows, Linux, MacOS и в браузере:
https://habr.com/ru/companies/timeweb/articles/734818/
#compose #kotlin
8 пакетов Flutter для облегчения разработки
1. Freezed
Freezed — генератор кода, который уменьшает количество действий для создания шаблонов классов и помогает писать код быстрее.
2. flutter_launcher_icons
Пакет пригодится, если понадобится изменить иконки приложения, не зная ничего о Xcode и Android. Вы просто добавляете свой значок в формате png, выполняете команду
3. Fluttertoast
С помощью этого пакета легко отображать уведомления в приложениях Flutter.
4. Firestore
Firestore — облачная база данных NoSQL.
Пакет позволяет легко интегрировать приложения Flutter с Firestore.
5. Riverpod
Riverpod — менеджер состояний, который обеспечивает простой и гибкий способ управления состоянием приложения Flutter. Пакет упрощает создание реактивных пользовательских интерфейсов и тестирование кода.
6. SharedPreferences
Пакет для хранения и извлечения пар «ключ-значение» на устройстве пользователя. Удобен для хранения предпочтений пользователя, таких как настройки и данные, специфичные для пользователя.
7. package_info_plus
Пакет предназначен для получения информацию о приложении (номер версии, номер сборки и имя пакета). Этот пакет особенно полезен для отображения информации о приложении пользователям или в целях отладки.
8. intl
С помощью этого пакета разработчики могут легко форматировать дату, время, числа и валюту для разных локалей, что необходимо для создания приложений, поддерживающих несколько языков и регионов.
А какие пакеты для Flutter используете вы?
#flutter
1. Freezed
Freezed — генератор кода, который уменьшает количество действий для создания шаблонов классов и помогает писать код быстрее.
2. flutter_launcher_icons
Пакет пригодится, если понадобится изменить иконки приложения, не зная ничего о Xcode и Android. Вы просто добавляете свой значок в формате png, выполняете команду
flutter pub run flutter_launcher_icons
, и все остальное происходит в фоновом режиме.3. Fluttertoast
С помощью этого пакета легко отображать уведомления в приложениях Flutter.
4. Firestore
Firestore — облачная база данных NoSQL.
Пакет позволяет легко интегрировать приложения Flutter с Firestore.
5. Riverpod
Riverpod — менеджер состояний, который обеспечивает простой и гибкий способ управления состоянием приложения Flutter. Пакет упрощает создание реактивных пользовательских интерфейсов и тестирование кода.
6. SharedPreferences
Пакет для хранения и извлечения пар «ключ-значение» на устройстве пользователя. Удобен для хранения предпочтений пользователя, таких как настройки и данные, специфичные для пользователя.
7. package_info_plus
Пакет предназначен для получения информацию о приложении (номер версии, номер сборки и имя пакета). Этот пакет особенно полезен для отображения информации о приложении пользователям или в целях отладки.
8. intl
С помощью этого пакета разработчики могут легко форматировать дату, время, числа и валюту для разных локалей, что необходимо для создания приложений, поддерживающих несколько языков и регионов.
А какие пакеты для Flutter используете вы?
#flutter
Passkeys в вопросах и ответах
Passkeys — это замена паролей, обеспечивающая более быстрый, простой и безопасный вход в приложения и веб-сайты. Этот способ авторизации надежен, устойчив к фишингу и рассчитан на работу не только на устройствах Apple. Самое главное, что людям не нужно ничего создавать, охранять или запоминать.
Чтобы объяснить, как применять Passkeys, команда Apple по конфиденциальности и безопасности провела встречу в формате «вопрос-ответ», в ходе которой ответила на распространённые вопросы о поддержке устройств, вариантах использования, восстановлении аккаунта и многом другом. В статье — основные моменты из этой беседы:
https://developer.apple.com/news/?id=21mnmxow
#ios
Passkeys — это замена паролей, обеспечивающая более быстрый, простой и безопасный вход в приложения и веб-сайты. Этот способ авторизации надежен, устойчив к фишингу и рассчитан на работу не только на устройствах Apple. Самое главное, что людям не нужно ничего создавать, охранять или запоминать.
Чтобы объяснить, как применять Passkeys, команда Apple по конфиденциальности и безопасности провела встречу в формате «вопрос-ответ», в ходе которой ответила на распространённые вопросы о поддержке устройств, вариантах использования, восстановлении аккаунта и многом другом. В статье — основные моменты из этой беседы:
https://developer.apple.com/news/?id=21mnmxow
#ios