Flutter Pulse
614 subscribers
380 photos
834 links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
February 8
March 20
June 4
June 25
June 26
🎯 RuStore — теперь не просто альтернатива, а необходимость
📲 Подписан закон, который обязывает при продаже смартфонов и планшетов в России обеспечивать доступ к установке и обновлению приложений через 🇷🇺 единый магазин RuStore.
💥 Что это значит?
— Устройства, продаваемые в РФ, должны поддерживать RuStore "из коробки"
Никаких блокировок, ограничений или "невидимых барьеров" для российских приложений
Запрещено препятствовать обновлениям, уведомлениям, платежам и работе функций, если они идут через RuStore
— Даже 🍏 устройства, которые традиционно "закрыты", формально обязаны обеспечить такую возможность
🚨 Причём:
📌 В законе отдельно упоминаются производители, ограничивающие доступ к сторонним магазинам.
📌 Закон напрямую запрещает такие ограничения — включая блокировку API, ограничение платежей или недоступность функций для сторонних приложений.

🔥 А значит — не исключено, что в ближайшем будущем можно будет ставить приложения на iOS через RuStore (в теории… но реализация покажет 😉).
📢 Flutter-разработчики, следим за ситуацией внимательно: возможно, скоро откроются новые каналы распространения даже для iOS. А пока — продолжаем пилить 🧱 🧑‍💻.
🔗 Подписывайтесь на FlutterPulse — мы разбираем важные законы, фреймворки, SDK и публикуем апдейты без воды.
💬 Что думаете о нововведении? Откроет ли это путь для Flutter-приложений на iOS вне App Store? Прогнётся ли Apple? Пишите в комментариях!
#RuStore #iOS #Закон #МагазинПриложений #MobileDev #Flutter #flutterdev #flutterpulse #россия #санкции #iosdev #androiddev #appdistribution #russia #technews
July 7
🎉 Внимание всем разработчикам на Flutter! 🚀💻
У нас есть свежие новости для вас! 📰 Плагин Flutter для VSCode только что получил мощное обновление, и вы точно не захотите его пропустить! 🤩
🆕 Главное в этом релизе:
👉 Hot Reload при сохранении теперь работает ещё стабильнее – забудьте про ручные перезапуски, фокусируйтесь только на коде!
👉 EmulatorId вместо deviceId в конфигурации запуска – управление симуляторами стало проще и удобнее! 🧩
👉 Команда Add Dependency теперь позволяет выбрать, в какой проект добавить зависимость – особенно полезно для монорепозиториев! 📁
🔧 А ещё в обновлении:
Переменные из циклов for и деструктуризации теперь отображаются в Inline Values – удобнее отлаживать!
Большие списки в отладчике теперь разбиваются на страницы – это улучшает производительность и предотвращает зависания. 📊
Inline Values больше не отображаются в ветках кода, которые не исполнялись – меньше визуального шума! 🧠
Устранено мерцание при установке/удалении брейкпоинтов – теперь всё чётко и без лишних «серых» состояний. 🎯
Hot Reload больше не падает, если вы случайно запустили его несколько раз подряд – стабильность прежде всего! 🔄
Добавлен экспериментальный флаг dart.mcpServer для автоматической регистрации MCP-сервера Dart SDK 3.9.0 и выше. 🧪
🔍 Хотите больше деталей? Ознакомьтесь с полным списком изменений здесь и не забудьте поставить 👍
📢 И конечно же, подписывайтесь на flutterpulse, чтобы не пропустить ничего важного из мира Flutter! Мы следим за каждым обновлением! 💬📱
#flutter #dart #flutterdev #VSCode #обновление #flutterpulse
July 10
August 7
Работаем с клавиатурными сокращениями

При создании приложений для Flutter Web или Desktop, важно обеспечить удобное управление клавиатурными сокращениями. В этом нам помогут виджеты Shortcuts и Actions! 🚀

Shortcuts - это виджет, который создаёт привязку клавиш к определённым действиям для своих потомков. Всё просто: вы предоставляете карту клавиш и интенций (Intent).

Actions - этот виджет позволяет потомкам вызывать действия, определённые в родителе. Его можно использовать как вместе с Shortcuts, так и отдельно 😉

Давайте рассмотрим пример кода:

// Это просто используется для указания нужного действия
class SelectAllIntent extends Intent {}

@override
Widget build(BuildContext context) {
return Shortcuts(
shortcuts: <LogicalKeySet, Intent>{
LogicalKeySet(LogicalKeyboardKey.control, LogicalKeyboardKey.keyA): SelectAllIntent(),
},
child: Actions(
dispatcher: LoggingActionDispatcher(),
actions: <Type, Action<Intent>>{
SelectAllIntent: SelectAllAction(),
},
child: Builder(
builder: (BuildContext context) => TextButton(
onPressed: Actions.handler<SelectAllIntent>(context, SelectAllIntent()),
child: const Text('SELECT ALL'),
),
),
),
);
}

// Action будет содержать логику, которую вы хотите выполнить при срабатывании клавиатурного сокращения
class SelectAllAction extends Action<SelectAllIntent> {
@override
void invoke(covariant SelectAllIntent intent) {
// делайте то, что вам нужно
}
}



В этом примере мы создаём клавиатурное сокращение Ctrl+A для вызова действия SelectAllAction. Просто и удобно! 👍

Оцените нашу новую рубрику и напишите, о чём бы вы хотели узнать в следующий раз 🤔

Все подобные советы ищите по хэштегу #FlutterPulseTips

#flutter #dart #flutterpulse #FlutterPulseTips #FlutterTips #MobileDev #KeyboardShortcuts #FlutterDev #CodingTips
August 24