Hat zufällig jmd ein funktionierendes Beispiel für den #Flutter #Riverpod AsyncNotifierProvider / class AsyncNotifier mit dynamischen Parametern?

[Перевод] Аналитика во Flutter-приложениях: Какие события отслеживать, примеры архитектур и настройка Firebase

Вы выпускаете Flutter-приложение и уверены в его качестве — но знаете ли вы, как им действительно пользуются люди? Где они отваливаются, какие функции игнорируют, а какие вызывают восторг? Без правильно выстроенной аналитики всё это остаётся догадками. В этой статье — не просто про Firebase и Mixpanel, а о том, как построить гибкую, масштабируемую архитектуру аналитики, которая не развалится с ростом проекта. Включая типобезопасность, поддержку нескольких вендоров и раздельные режимы для продакшна и разработки.

https://habr.com/ru/companies/otus/articles/910810/

#flutter #Firebase Analytics #mixpanel #dart #riverpod #мобильная разработка

Аналитика во Flutter-приложениях: Какие события отслеживать, примеры архитектур и настройка Firebase

Представьте себе ситуацию: вы рассказали всем своим родным и близким о своем замечательном новом приложении. Возможно, вам даже посчастливилось сформировать список ожидания...

Хабр
More #dart troubles today, this time particularly with #riverpod.

It looks like sometimes, with an unknown cause, setting a StateNotifier-based provider that holds an error message from within a ConsumerWidget (in response to another provider) will fail, because "Providers are not allowed to modify other providers during their initialization."

The only provider that should be being initialized is the command provider, and I've taken it out of the equation by delaying the set until that is done executing. The behavior hasn't changed at all. Oddly enough, once that error grinds through the debugger, it actually sets the StateNotifier to a resulting error ("At least listener [sic] of the StateNotifier Instance of '_CommandNoteNotifier' threw an exception
when the notifier tried to update its state"; the console shows that that error is in response to the "Providers are not allowed" error). I just don't know where exactly that's happening, or why that works. Or how I can get it to work correctly.

Would it work fine if I took executeCommand (which now-indirectly runs the "set") to not be a Provider and just be a function that takes a ref instead? That's not preferable because then I have to take a WidgetRef outside of a widget, which is "wrong" to do and comes with other issues.
🌗 使用 Riverpod、Drift 和 PowerSync 打造本地優先的 Flutter 應用程式
➤ 提升使用者體驗的本地優先架構實作指南
https://dinkomarinac.dev/building-local-first-flutter-apps-with-riverpod-drift-and-powersync
本文探討了本地優先(Local-First)應用程式架構,與傳統的網路優先架構進行比較,並介紹如何使用 Riverpod、Drift 和 PowerSync 在 Flutter 應用程式中實作本地優先的功能。本地優先架構能提供使用者在網路狀況不佳時也能順暢體驗的應用程式,文章深入探討了建構同步引擎的挑戰,包含變更追蹤、衝突解決、邊界案例處理及效能優化等面向,並以待辦事項應用程式的實作範例說明。
+ 這篇文章清楚地解釋了本地優先架構的優點和挑戰,以及如何使用相關工具在 Flutter 應用程式中實現它。 對於想提升應用程式離線功能的開發者
#Flutter #Local-First #Riverpod #Drift #PowerSync #應用程式架構
I've enjoyed using Riverpod for my Dart/Flutter app framework but I have confused myself on some intricacies of lifecycles of Riverpod providers. I decided to do a detailed walk of the topic for myself and post it for my blog. #flutter #riverpod #DartLang #programming nequalsonelifestyle.com/2024/1…
Exploring Dart/Flutter Riverpod Lifecycles

Flutter architecturally is pretty agnostic about how one wires the state and business logic into the Flutter UI. It has no “standard” way of doing it although it does provide the foundational architecture to build declarative UIs. Most people use a framework on top of that to achieve it in a more intuitive and streamlined way. One such popular framework is Riverpod , “A Reactive Caching and Data-binding Framework”. I’ve recently switched from another framework to this and have enjoyed the experience a lot. However there are some nuances to the nature of the lifecyle of the components which I have found myself getting confused on half way through an implementation. These aren’t complicated concepts when looked at in isolation. It’s just something that I keep having to “relearn” if I haven’t seen it in awhile. I thought it’d be good to document it for myself, and by extension for anyone else. This won’t cover the basics of Riverpod like setup, design pattern best practices, et cetera. except as needed to explore the concept of the lifecycle of the Riverpod components. Also, I am not a Riverpod expert so this is my relative new-to-the-framework point of view as well. If anything stands out to experts as being an over-simplification to the point of being wrong or adding confusion to what is happening please ping me on my socials. You can find the completed demo in this GitLab repo directory

N=1 Lifestyle
ref.の後に手が止まる、、、そんなあなたと私へ送る記事 - Qiita

はじめに私は、状態管理のコードを初めてみた時、何かの暗号ではないかと思うくらい複雑に感じました。ですが本当によく出てくるものなので、覚えたもん勝ちだと思います!私自身まだまだあやふやな部分があ…

Qiita
"Riverpod Extensions. This post is based off a presentation I… | by Reme Le Hane | Mar, 2024 | Medium" https://medium.com/@remelehane/riverpod-extensions-decd8bfff862 #flutter #riverpod #flutterdev
Why Choose Riverpod? — Riverpod Extensions - Reme Le Hane - Medium

Previously we took a look at what Riverpod is, in this post we Weill take a look at the extension methods provided by Riverpod. To help with controlling the global access to your states data…

Medium
"What is Riverpod. This post is based off a presentation I… | by Reme Le Hane | Mar, 2024 | Medium" https://medium.com/@remelehane/what-is-riverpod-88817b4a2563 #flutter #riverpod #flutterdev
Why Choose Riverpod? — What is Riverpod - Reme Le Hane - Medium

As described by the creator Pemi Rousselet, Riverpod is a Reactive Caching and Data-binding framework, sow while it does make for a fantastic state management solution, that is not all that it is…

Medium
"How to Build a Robust Flutter App Initialization Flow with Riverpod" https://codewithandrea.com/articles/robust-app-initialization-riverpod/ #flutter #riverpod
How to Build a Robust Flutter App Initialization Flow with Riverpod

Some useful Riverpod techniques you can use to initialize async dependencies, show some loading UI, and handle errors during app startup.

Code With Andrea