realtimeExample function
Example 2: Real-time updates
Implementation
Future<void> realtimeExample() async {
print('\n=== Real-Time Updates Example ===');
final backend = QuicUIFirebase();
await backend.initialize();
// Listen to single screen changes
final subscription = backend.subscribeToScreen('home-screen').listen(
(event) {
switch (event.type) {
case ScreenEventType.added:
print('Screen added: ${event.data?.name}');
break;
case ScreenEventType.updated:
print('Screen updated: ${event.data?.name}');
final json = jsonDecode(event.data!.json);
print('New JSON: $json');
// Update UI here
break;
case ScreenEventType.deleted:
print('Screen deleted');
// Handle deletion
break;
case ScreenEventType.error:
print('Error: ${event.data}');
break;
}
},
onError: (error) => print('Stream error: $error'),
);
// Listen to all screen changes
backend.subscribeToAllScreens().listen((event) {
print('All screens event: ${event.type}');
});
// Cancel subscription when done
// await subscription.cancel();
}