Platform Surface
Data Sources
Live results can be updated by more than one source:Live objects and collections observe SDK state. They do not remove the need to subscribe to the right real-time topics where a platform exposes explicit topic subscriptions.
Live Object
A live object tracks one entity. The SDK can emit:
Typical screens: post detail, message detail, channel profile, community header, user profile, room detail, or stream detail.
Live Collection
A live collection tracks a list. The SDK can append, refresh, or re-emit the list when local cache, server fetches, or real-time events change the underlying data.
Typical screens: post feeds, comment threads, chat messages, channel lists, member lists, reaction lists, follower lists, rooms, streams, and notifications.
Usage Notes
- Keep the live subscription for as long as the UI needs updates.
- Clean up subscriptions when the screen, component, view model, or widget is disposed.
- Treat the first emission as potentially local or loading unless the platform exposes freshness status and it says otherwise.
- Do not assume all platforms expose identical states. Use each platform’s native live primitive.
- For TypeScript, subscribe to the relevant topic when you need cross-device real-time updates, then dispose both the repository observer and the topic subscription.
Platform Guides
TypeScript
Observe live objects and collections with callbacks, pagination helpers, and topic subscriptions.
iOS
Use
AmityObject, AmityCollection, notification tokens, and published snapshots.Android
Use RxJava
Flowable, Android Paging 3, and the coroutine asFlow() bridge.Flutter
Use Dart streams,
LiveCollection, LiveResult, and collection disposal.Related Topics
Real-time Events
Learn how real-time events update SDK state.
Presence State
Track user, channel, and room presence.