Flutter Pulse
513 subscribers
315 photos
673 links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
Самые лучшие обновлённые пакеты за последние 24 часа

flutter_chat_ui 2.8.1 - плагин для Flutter, который позволяет создавать чаты. Теперь с исправлением composer inputClearMode и возможностью использования кастомного редактора.
👍 Лайки: 1510, 📥 Скачиваний: 69.9К
https://pub.dev/packages/flutter_chat_ui

google_api_headers 2.0.0 - пакет для получения заголовков, необходимых для вызова Google API с ограниченным ключом. Теперь с совместимостью с Android Gradle Plugin 8.0 и обновленными версиями SDK.
👍 Лайки: 30, 📥 Скачиваний: 82.7К
https://pub.dev/packages/google_api_headers

jaspr 0.20.0 - современный фреймворк для построения веб-сайтов на Dart, поддерживающий как клиентскую, так и серверную отрисовку. В новой версии удалены устаревшие параметры и методы, добавлены новые html-методы и улучшена обработка ошибок.
👍 Лайки: 533, 📥 Скачиваний: 15.9К
https://pub.dev/packages/jaspr

background_downloader 9.2.3 - пакет для скачивания и загрузки файлов в фоновом режиме на платформах iOS, Android, MacOS, Windows и Linux. В новой версии исправлены незначительные ошибки, улучшены разрешения на iOS и добавлена возможность использования символа $ в уведомлениях на Android.
👍 Лайки: 416, 📥 Скачиваний: 73.3К
https://pub.dev/packages/background_downloader

pdfrx 1.3.5 - быстрый и функциональный просмотрщик PDF-файлов, поддерживающий множество платформ, включая Android, iOS, Windows, macOS, Linux и Web. В новой версии улучшена поддержка прогрессивной загрузки для PdfDocumentViewBuilder, а также исправлена ошибка с прокруткой колесом мыши.
👍 Лайки: 233, 📥 Скачиваний: 178К
https://pub.dev/packages/pdfrx

Tostore 2.2.2 - единственный распределенный векторный базовый движок хранения в экосистеме Dart/Flutter с исключительной производительностью. В новой версии удалено автоматическое управление кэшем запросов, оптимизирована плавность и отзывчивость интерфейса для крупномасштабных операций с данными, улучшена производительность для limit, сортировки и постраничного вывода.
👍 Лайки: 31, 📥 Скачиваний: 131К
https://pub.dev/packages/tostore

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #firebase_messaging #flutter_chat_ui #google_api_headers #jaspr #background_downloader #pdfrx #Tostore
Как использовать Isolates во Flutter

Привет, разработчики Flutter! 👋 Сегодня мы рассмотрим одну из ключевых тем в разработке высокопроизводительных приложений — использование Isolates для выполнения фоновых задач. Isolates позволяют выполнять тяжелые вычисления в отдельных потоках, не блокируя основной поток приложения. 📈

Зачем нужны Isolates?

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

Пример использования Isolates

Давайте рассмотрим пример, как отправлять и получать данные из Isolates. В этом примере мы создадим Isolate и организуем двустороннюю связь между основным потоком и Isolate.



static void _update(String data) async {
// создаем канал ответа для основного потока
var _toIsolate = ReceivePort();
// отправляем этот канал ответа
data.sendPort.send(_toIsolate.sendPort);
// слушаем данные, отправленные из основного потока, чтобы их обработать
_toIsolate.listen((message) {
// выполняем тяжелую работу здесь
data.sendPort.send("Мой потрясающий результат...");
});
}





Isolate? isolate;
StreamController<String>? _streamController;
Stream<String>? _stream;

void runIsolate() {
// создаем канал связи для ответов Isolate
var fromIsolate = ReceivePort();
// контроллер потока для отправки данных и отображения их в UI
_streamController = StreamController<String>();
// первый канал ответа — это канал связи, по которому мы можем снова отправлять данные
fromIsolate.listen((data) {
if (data is SendPort) {
_toIsolate = data;
}
// обработанные данные (здесь это String, но можно использовать и другие типы
// или классы с базовыми типами)
if (data is String) {
_streamController!.sink.add(data);
}
});
// запускаем Isolate
Isolate.spawn(_update, initialData).then((value) => isolate = value);
// используем этот поток, чтобы слушать данные из нашего UI или откуда угодно еще
_stream = _streamController!.stream.asBroadcastStream();
// не забудьте закрыть его, когда закончите
}



В этом примере мы создаем Isolate и организуем двустороннюю связь между основным потоком и Isolate. Это позволяет выполнять тяжелые задачи в фоновом режиме и получать результаты в основном потоке. 🔄

Не забудьте остановить Isolate, когда закончите работу с ним, чтобы избежать утечек памяти. 💡

Оцените новую рубрику и напишите в комментариях, какие темы вам интересны! 👇

Все подобные новости можно найти по хэштегу #FlutterPulseTips

#flutter #dart #flutterpulse #FlutterPulseTips #mobiledevelopment #appdevelopment #performanceoptimization #isolates #concurrency #multithreading
👍2
Обзор пакетов на тему "Музыка и Аудио"

audio_session 0.2.2
Пакет для настройки аудиосессии вашего приложения. 👍 Лайки: 329, 📥 Скачиваний: 700К
Последнее обновление 📅: 2 месяца назад
https://pub.dev/packages/audio_session

audioplayers 6.5.0
Плагин для проигрывания нескольких аудиофайлов одновременно. 👍 Лайки: 3300, 📥 Скачиваний: 502К
Последнее обновление 📅: 34 дня назад
https://pub.dev/packages/audioplayers

just_audio 0.10.4
Популярный пакет для проигрывания аудио на различных платформах. 👍 Лайки: 3980, 📥 Скачиваний: 661К
Последнее обновление 📅: 44 дня назад
https://pub.dev/packages/just_audio

Audio Waveforms 1.3.0
Пакет для генерации волновых форм аудиозаписей. 👍 Лайки: 787, 📥 Скачиваний: 43.5К
Последнее обновление 📅: 4 месяца назад
https://pub.dev/packages/audio_waveforms

Flutter Sound 9.28.0
Пакет для проигрывания и записи аудио в ваших Flutter-приложениях. 👍 Лайки: 1570, 📥 Скачиваний: 69.4К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/flutter_sound

audio_service 0.18.18
Пакет для управления аудио в фоновом режиме. 👍 Лайки: 1280, 📥 Скачиваний: 96.1К
Последнее обновление 📅: 3 месяца назад
https://pub.dev/packages/audio_service

#audioplayers #justaudio #audiowaveforms #fluttersound #audioservice #audiosession #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
Самые лучшие обновлённые пакеты за последние 24 часа

logger 2.6.1
Плагин для создания красивых и удобных логов в приложениях. Убрана проблема с гонкой при сбросе буфера в AdvancedFileOutput.
👍 Лайки: 3560, 📥 Скачиваний: 1.8М
https://pub.dev/packages/logger

openfoodfacts 1.3.8
Плагин для доступа к API Open Food Facts, предоставляющий информацию о более чем 2,9 миллионах пищевых продуктов. Изменения в API KnowledgePanel.
👍 Лайки: 137, 📥 Скачиваний: 2.8К
https://pub.dev/packages/openfoodfacts

Vania 1.0.0
Мощный фреймворк для создания высокопроизводительных веб-приложений на Dart. Улучшен QueryBuilder, добавлена полная функциональность ORM.
👍 Лайки: 160, 📥 Скачиваний: 183
https://pub.dev/packages/vania

Masamune Framework 3.3.3
Инструмент для ускорения разработки приложений, позволяющий автоматически генерировать код. Исправлены незначительные ошибки.
👍 Лайки: 21, 📥 Скачиваний: 13.9К
https://pub.dev/packages/masamune

sqlite3_flutter_libs 0.5.37
Плагин для использования native sqlite3 библиотек в Flutter-приложениях. Включает sqlite3 версии 3.50.3.
👍 Лайки: 162, 📥 Скачиваний: 292К
https://pub.dev/packages/sqlite3_flutter_libs

fluwx 5.7.0
Плагин для Flutter, позволяющий вызывать родные API WeChatSDK. Исправлена проблема с debug_logging на Android.
👍 Лайки: 252, 📥 Скачиваний: 6.6К
https://pub.dev/packages/fluwx

#Flutter #Dart #PubDev #FlutterPulse #FlutterPulseBestPackages #logger #openfoodfacts #Vania #MasamuneFramework #sqlite3_flutter_libs #fluwx
Сохранение позиции прокрутки страницы

Привет, разработчики Flutter! 👋 Сегодня мы поделимся полезным советом о том, как сохранить позицию прокрутки страницы при навигации между разными экранами. 📱💻

Вы когда-нибудь сталкивались с ситуацией, когда пользователь прокручивал список или контент на странице, а затем возвращался обратно, и страница снова оказывалась в самом верху? 😒 Это может быть неудобно для пользователей, особенно если они хотят вернуться к тому месту, где они остановились.

Решение: использование PageStorage и PageStorageBucket

Чтобы решить эту проблему, мы можем использовать PageStorage и PageStorageBucket. Эти инструменты позволяют сохранять состояние прокрутки страницы и восстанавливать его при возвращении на эту страницу.

Вот пример кода:


final PageStorageBucket _bucket = PageStorageBucket(); // Создание хранилища для страниц

final pages = <Widget>[ // Список страниц
Page1(key: const PageStorageKey('page1'), ...), // Первая страница с уникальным ключом
Page2(key: const PageStorageKey('page2'), ...), // Вторая страница с уникальным ключом
];

@override
Widget build(BuildContext context) {
return Scaffold( // Основной виджет страницы
body: PageStorage( // Обертка для сохранения состояния прокрутки
child: pages[currentTab], // Текущая отображаемая страница
bucket: _bucket, // Передача хранилища
),
);
}



Как это работает?

1. Мы создаем экземпляр PageStorageBucket, который будет хранить состояние наших страниц.
2. Каждой странице присваиваем уникальный ключ с помощью PageStorageKey. Это позволяет PageStorage идентифицировать каждую страницу и сохранять её состояние.
3. Обернём наши страницы в виджет PageStorage, передав туда текущего ребёнка (текущую страницу) и наше хранилище (_bucket).

Таким образом, когда пользователь переходит между страницами, состояние прокрутки сохраняется, и при возвращении на предыдущую страницу она восстанавливается в том же состоянии, в котором была оставлена. 👍

Оцените новую рубрику и напишите в комментариях, какие темы вы хотели бы видеть в наших следующих постах! 💬

Все подобные новости можно найти по хэштегу #FlutterPulseTips

#flutter #dart #flutterpulse #FlutterPulseTips #MobileDev #AppDev #UIUX #DevTips
👍4
Обзор пакетов на тему "Облачное хранилище и облачные базы данных"

Firebase Database Plugin для Flutter!
Этот плагин позволяет использовать API Firebase Database в ваших Flutter-приложениях.
👍 Лайки: 635, 📥 Скачиваний: 211К
Последнее обновление 📅: 17 дней назад
https://pub.dev/packages/firebase_database

cloud_firestore_web
Реализация Cloud Firestore для веб-приложений. Используется для работы с облачной базой данных Firestore в проектах на основе веб-технологий.
👍 Лайки: 44, 📥 Скачиваний: 1.03М
Последнее обновление 📅: 17 дней назад
https://pub.dev/packages/cloud_firestore_web

Supabase Flutter
Клиентская библиотека для Supabase, позволяющая легко интегрировать функции Supabase в ваши Flutter-приложения.
👍 Лайки: 840, 📥 Скачиваний: 204К
Последнее обновление 📅: 40 дней назад
https://pub.dev/packages/supabase_flutter

Firebase Storage
Этот плагин позволяет использовать API облачного хранилища Firebase в ваших Flutter-приложениях.
👍 Лайки: 1720, 📥 Скачиваний: 536К
Последнее обновление 📅: 17 дней назад
https://pub.dev/packages/firebase_storage

gcloud
Высокоуровневый интерфейс для работы с сервисами Google Cloud Platform!
Поддерживает Cloud Datastore, Cloud Storage и Cloud Pub/Sub.
👍 Лайки: 92, 📥 Скачиваний: 573К
Последнее обновление 📅: 47 дней назад
https://pub.dev/packages/gcloud

Cloud Firestore Plugin для Flutter
Этот плагин позволяет использовать API Cloud Firestore в ваших Flutter-приложениях.
👍 Лайки: 3690, 📥 Скачиваний: 1.01М
Последнее обновление 📅: 17 дней назад
https://pub.dev/packages/cloud_firestore

#firebase_database #cloud_firestore_web #supabase_flutter #firebase_storage #gcloud #cloud_firestore #flutter #dart #pubdev #flutterpulse #flutterpulsethemedpackages
Привет, программисты! 🤩 Сегодня у нас есть супер-полезная информация для всех, кто работает с Flutter и Dart! 🚀 В одном из интересных постов была поделена информация о том, как сделать скролящиеся списки красивыми, плавными и высокопроизводительными 🌟. И мы решили погрузиться глубже в эту тему! 🤓

В посте были упомянуты три основных виджета для реализации списков с прокруткой: SingleChildScrollView, ListView и CustomScrollView 📝. Каждый из них имеет свои плюсы и минусы, и важно понимать, когда и какой из них использовать 🤔.

SingleChildScrollView - самый простой виджет для прокрутки, но он отрисовывает все содержимое списка одномоментно, что может страдать производительность 📊. ListView - наиболее часто используемый виджет, он поддерживает высокую производительность и работает по принципу ленивой загрузки 📈. А CustomScrollView - идеальное решение для сложных интерфейсов, он обеспечивает высокую производительность и поддерживает наибольшую возможность кастомизации 🎨.

Чтобы узнать больше о этих виджетах и как их использовать, переходите по ссылке и читайте полную статью 📄.

И не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений в мире Flutter и Dart! 📣 #flutter #dart #flutterpulse 🚀
2
Новые пакеты за неделю

flutter_quick_nav
Плагин для навигации в Flutter, который упрощает переходы между экранами с помощью чистых и интуитивных методов. Он обеспечивает плавную анимацию затухания и упрощает навигацию, обертывая общие шаблоны, такие как push, replace и pushAndRemoveUntil.
👍 Лайки: 18, 📥 Скачиваний: 84
https://pub.dev/packages/flutter_quick_nav

easy_notify
Пакет для локальных уведомлений с поддержкой запланированных, повторяющихся и мгновенных уведомлений.
👍 Лайки: 25, 📥 Скачиваний: 117
https://pub.dev/packages/easy_notify

sign_in_with_apple_server
Позволяет создать бэкенд для авторизации через Apple.
Поддерживает валидацию токенов, обновление токенов и отзыв авторизации.
👍 Лайки: 1, 📥 Скачиваний: 478
https://pub.dev/packages/sign_in_with_apple_server

video_view
Пакет для легкого воспроизведения видео в приложениях Flutter.
Он поддерживает субтитры и переключение аудиодорожек, а также использует системные или приложенные компоненты для бесшовного воспроизведения.
👍 Лайки: 3, 📥 Скачиваний: 630
https://pub.dev/packages/video_view

native_file_preview
Предоставляет функцию предварительного просмотра файлов на платформах iOS и Android.
Поддерживает множество форматов файлов, включая PDF, изображения, документы и многое другое.
👍 Лайки: 12, 📥 Скачиваний: 64
https://pub.dev/packages/native_file_preview

material_design
Пакет для Flutter, который позволяет создавать красивые и последовательные интерфейсы, соответствующие официальным рекомендациям Material Design 3.
Он предоставляет мощный набор дизайн-токенов и готовых виджетов для создания приложений с современным дизайном.
👍 Лайки: 3, 📥 Скачиваний: 380
https://pub.dev/packages/material_design

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestNewPackages
У нас есть супер-новость для вас! 🚀 Айнур, опытный Flutter-разработчик из Surf, только что опубликовал подробный материал о Pattern Matching в Dart 🐦. Это революционный подход, который преображает процесс обработки данных, состояний и коллекций! 🔄

Теперь вы сможете избавиться от bang operator и работать с несколькими переменными в элегантном стиле 💃. Айнур также покажет, как деструктурировать sealed-классы и использовать всю мощь switch выражений 🔥.

Хотите узнать все секреты Pattern Matching в Dart? 🤔 Тогда переходите по ссылке и читайте полную статью! 📚

И не забудьте подписаться на наш канал @flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 📱 #flutter #dart #flutterpulse 🚀💻
🔥1
Самые лучшие обновлённые пакеты за последние 24 часа

cloud_firestore 5.6.12
Плагин для Flutter, который позволяет использовать API Cloud Firestore в приложениях Flutter.
Убраны ошибки и улучшена производительность.
👍 Лайки: 3 690, 📥 Скачиваний: 986К
https://pub.dev/packages/cloud_firestore

firebase_auth 5.7.0
Популярный пакет для аутентификации в Firebase для Flutter. Теперь добавлена поддержка publish и addApplicationDelegate на macOS.
👍 Лайки: 4 160, 📥 Скачиваний: 1.1М
https://pub.dev/packages/firebase_auth

firebase_messaging 15.2.10
Плагин для Flutter, который позволяет использовать Firebase Cloud Messaging API. Теперь с обновленной зависимостью.
👍 Лайки: 3 800, 📥 Скачиваний: 1.7М
https://pub.dev/packages/firebase_messaging

firebase_core 3.15.2
Пакет для Flutter, который позволяет использовать Firebase Core API. Исправлена ошибка, вызывающая крах на iOS при включении автоматической сбора данных.
👍 Лайки: 3 900, 📥 Скачиваний: 2.8М
https://pub.dev/packages/firebase_core

test_api 0.7.7
Пакет предназначен для написания тестов и пока не рекомендуется для публичного использования. В новой версии расширен диапазон зависимостей для поддержки последней версии анализатора.
👍 Лайки: 23, 📥 Скачиваний: 7.8М
https://pub.dev/packages/test_api

test 1.26.3
Пакет test используется для написания и запуска тестов в Dart. В новой версии расширен диапазон зависимостей от пакета analyzer.
👍 Лайки: 597, 📥 Скачиваний: 6.6М
https://pub.dev/packages/test

#flutter #dart #pubdev #FlutterPulse #FlutterPulseBestPackages #cloud_firestore #firebase_auth #firebase_messaging #firebase_core #test_api #test