React Native UI Kit SDK
Compatibility: Requires @cloudflare/realtimekit-react-native (React Native Core) v2.0.0 or later
This is a major breaking release. Review all breaking changes below before upgrading.
Breaking changes
- Upgraded to
@cloudflare/realtimekit-react-nativev2.0.0 and@cloudflare/realtimekitv2.0.0. All breaking changes from Web Core v2.0.0 and React Native Core v2.0.0 apply. - Removed the KeepAlive Service from the UI Kit. Background Audio/Video support for Android is now managed by
@cloudflare/realtimekit-react-nativev2.0.0. Update your integration to useuseRealtimeKitClient({ keepAliveService })from the Core SDK. RtkPluginMainnow usesplugin.component(anHTMLElement-like object) instead of an iframe. This aligns with the plugin API redesign in Web Core 2.0.0.- RtkMoreMenu is now scrollable rather than a fixed-height container.
Features
Breakout Roomssupport:- New
RtkBreakoutRoomsManagercomponent: full manager UI for creating, assigning participants, and starting or stopping breakout rooms. - New
RtkBreakoutRoomsTogglecomponent: control-bar button to open or close the breakout rooms manager.
- New
- Connected meeting switching UI:
RtkMeetingnow handleschangingMeetingevents and shows a "Joining…" interstitial screen while switching between connected rooms. - New exported types:
ConnectedMeeting,ConnectedMeetingParticipant,ConnectedMeetingState,PluginIframe. - New state fields in the
Statestype:activeBreakoutRoomsManager— tracks breakout manager open/close state and room-switch destination.activeBreakoutConfirmation— breakout action confirmation dialog state.
Fixes
- Fixed an issue where the chat sent notification showed up when a message was edited rather than only when a new message was sent.
- Fixed an issue where video from web participants did not update on mobile devices while screen sharing or a plugin was active.
- Fixed an issue where the screenshare video appeared stretched or distorted in fullscreen when switching between landscape and portrait orientations.
- Fixed an issue where host controls disappeared when the host was off stage.
- Fixed an issue where the screenshare view shook when the device was held in landscape mode on iOS.
- Fixed an issue where the screen orientation did not return to normal after closing a fullscreen plugin on Android.
- Fixed an issue where the More menu could not be scrolled when the device was in landscape mode.
- Fixed an issue where opening the More menu in landscape mode incorrectly locked the screen orientation.
- Fixed inconsistent appearance across button and toggle controls.
- Fixed an issue where participant video tiles occasionally showed outdated or frozen video.
- Fixed an issue where the "Hide Result" option was not enabled by default when creating a poll.
Breaking changes
- Removed support for
@cloudflare/realtimekit-react-nativeversion less than v1.0.0 - The Join Stage Confirmation dialog (i.e
RtkJoinStage) now opens with Mic/Camera disabled by default.
Features
- Added unread counts for chat and polls in
RtkPollsToggle,RtkChatToggle, andRtkMoreToggle
Fixes
- Fixed an issue where when a meeting host leaves the stage, all plugins and host controls disappear.
Fixes
- Fixed an issue where self video is not visible on Setup Screen on initial load (i.e happens with @cloudflare/realtimekit-react-native version v0.3.2)
Features
- Added edit, pin, and delete controls to Chat messages in RtkChat
- Added optional background support for audio/video in Android. Refer to the documentation for implementation details.
Fixes
- Fixed image button in RtkChat opening File Manager instead of Gallery
- Fixed app crash on RtkChat auto-scroll when new messages arrive
- Fixed chat message display issues
Fixes
- Fixed duplicate stage toggle pop-ups
- Fixed audio switch to earpiece when leaving stage in Webinar
Fixes
- Fixed android build failing for New Architecture
- Added delete option feature in Polls
- Fixed screen being blank when kicked from meeting
- Fixed the fullscreen button not clickable in screenshare
- Fixed audio selector not visible for webinar viewer
- Fixed video incorrectly labeled as being off