agora_rtc_engine
This Flutter plugin is a wrapper for Agora Video SDK
Agora.io provides building blocks for you to add real-time voice and video communications through a simple and powerful SDK. You can integrate the Agora SDK to enable real-time communications in your own application quickly.
NOTE: The main branch is major update base on the Agora Native SDK 4.x, which introduces some break changes. previous releases please see the following branches(the version < 6.0.0):
Usage
To use this plugin, please add agora_rtc_engine as a dependency to your pubspec.yaml file.
Getting Started
Get some basic and advanced examples from the example folder.
Privacy Permission
Agora Video SDK requires Camera and Microphone permission to start a video call.
Android
See the required device permissions from the AndroidManifest.xml file.
<manifest>
...
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
tools:ignore="ProtectedPermissions" />
...
</manifest>
iOS & macOS
Open the Info.plist and add:
Privacy - Microphone Usage Description,and add some description into the Value column.Privacy - Camera Usage Description, and add some description into the Value column.
Multiple Platforms
The agora_rtc_engine supports Android/iOS/macOS/Windows, but not support Web yet.
API Reference Resources
Feedback
If you have any problems or suggestions regarding the sample projects, feel free to file an issue OR pull request.
How to contribute
To help work on this sdk, please refer to CONTRIBUTING.md .
Related resources
License
The project is under the MIT license.
Download source on GitHub
Flutter plugin of Agora RTC SDK for Android/iOS/macOS/Windows https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK 447 forks. 796 stars. 73 open issues. Recent commits: fix: stabilize release consumer and latest Flutter CI (#2702)## Summary- set an Android consumer compile SDK baseline that also reachesiris_method_channel- extract Windows SDK archives under the build directory instead of theplugin symlink- update example and rendering Android toolchain versions for lateststable Flutter- check out the repository as agora_rtc_engine for the weekly iOSSwiftPM build- allow Release Consumer Smoke to run manually against an existingversion or Git commit- test iOS and macOS consumers with both SwiftPM and CocoaPods## ValidationLocal:- Flutter 3.47.1 example release APK build passed- Flutter 3.47.1 rendering debug APK build passed- fresh pub 6.6.4 Android consumer APK build passed- fresh Git tag 6.6.4 Android consumer APK build passed- iOS simulator SwiftPM build passed from an agora_rtc_engine checkout- Bash syntax, workflow YAML parse, and git diff checks passedGitHub Actions:- PR-commit Git consumer smoke passed on Android, iOS, macOS, Windows,and Web:https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/34198512748- latest stable weekly verification:https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/34196616152- SwiftPM plus CocoaPods consumer matrix:https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/34199471060The standard 6.6.4 run intentionally exercises the already-publishedartifact. Its Windows jobs still reproduce the old package issue becausethe published 6.6.4 package cannot contain this PR fix:https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/34196629983Fixes failures seen in:-https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/33855303941-https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/actions/runs/33976504048 , GitHub chore: release 6.6.4 , sda-rob feat: release agora_rtc_engine 6.6.4 (#2698)## Summary- bump `agora_rtc_engine` to `6.6.4` and update Native/Iris dependenciesacross Android, iOS, macOS, Windows, and SwiftPM- add camera capturer configuration example and local video focal-lengthevent bindings/tests- fix compact dependency parsing when Iris `Build version` and a NativeSPM `tag` coexist## Validation- `node –test ci/update_spm_deps.test.mjs` (56/56 passed)- dependency update and code generation completed successfully in #2697———Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Co-authored-by: sda-rob <sda-rob@users.noreply.github.com>Co-authored-by: Arthas <luxuhui@agora.io> , GitHub fix: load prepare branch action from main (#2691)## Summary- load the shared prepare_branch composite action from main inupdate-deps and gen-code workflows- keep target repository checkout and workflow inputs unchanged- ensure commit/tag targets use the fixed branch probe even when thetarget checkout predates the fix## Evidence- run 33285122888 used workflow main at 3b6030a5 but loaded the stalelocal action from target checkout 5ee09b6c and failed before branchcreation- run 33284540221 and 33285122888 both parsed the exact 4.6.4-build.3dependency matrix successfully- YAML parse and git diff –check passed- actionlint reported only pre-existing unrelated workflow findings , GitHub fix: handle commit refs in prepare branch action (#2690)## Summary- evaluate the remote-branch probe directly in the if condition- allow missing branch, commit, and tag refs to reach the existingspecial-branch creation path under bash -e- preserve the existing-remote-branch behavior## Evidence- Rehoboam-triggered run 33284540221 parsed the Flutter 4.6.4dependencies, then failed before branch creation because the probereturned 1 under bash -e- focused local bare-remote check created special/6.6.4 from a commitref and emitted final_target_branch=special/6.6.4- YAML parse and git diff –check passed , GitHub
Provides the list of the opensource Flutter apps collection with GitHub repository.