This repository implements a simple plugin template if you want to make plugins for agora rtc sdk. Then you can refer to this repository to make your own unique plugin.
- CMake (3.10+)
- Visual Studio 2019 (Windows)
- Xcode (iOS/macOS)
- Android Studio (Android)
- Gradle (6.5)
- NDK (You should set
ANDROID_NDK
into environment variables, Such as:export ANDROID_NDK="$HOME/Library/Android/sdk/ndk/21.1.6352462"
)
Execute in the repository root directory:
.\scripts\build-windows.bat
Copy the generated product to the imported agora rtc sdk (note that there are two folders, x64, Win32)
SDK type | Generate product | Copy to SDK directory |
---|---|---|
Unity SDK | build/windows/Win32/output/Release/AgoraRawDataPlugin.dll, build/windows/x64/output/Release/AgoraRawDataPlugin.dll | Assets/Agora-RTC-Plugin/Agora-Unity-RTC-SDK/Plugins/x86, Assets/Agora-RTC-Plugin/Agora-Unity-RTC-SDK/Plugins/x86_64 |
Electron SDK | build/windows/Win32/output/Release/AgoraRawDataPlugin.dll, build/windows/x64/output/Release/AgoraRawDataPlugin.dll | Any path where the ffi-napi could load it |
Execute in the repository root directory:
sh scripts/build-mac.sh
Copy the generated product to the already imported agora rtc sdk
SDK type | Generate product | Copy to SDK directory |
---|---|---|
Unity SDK | build/mac/MAC/output/Release/AgoraRawDataPluginUnity.bundle | Assets/Agora-RTC-Plugin/Agora-Unity-RTC-SDK/Plugins/macOS |
Electron SDK | build/mac/MAC/output/Release/AgoraRawDataPlugin.dylib | Any path where the ffi-napi could load it |
Execute in the repository root directory:
sh scripts/build-ios.sh
Copy the generated product to the already imported agora rtc sdk
SDK type | Generate product | Copy to SDK directory |
---|---|---|
Unity SDK | build/ios/ALL_ARCHITECTURE/output/Release/AgoraRawDataPlugin.framework | Assets/Agora-RTC-Plugin/Agora-Unity-RTC-SDK/Plugins/iOS |
Execute in the repository root directory:
In mac platform:
sh scripts/build-android.sh
Copy the generated product to the imported agora rtc sdk (note that there are four folders here, namely x86, x86_64, armeabi-v7a, arm64-v8a)
SDK type | Generate product | Copy to SDK directory |
---|---|---|
Unity SDK | build/android/ALL_ARCHITECTURE/output/Release/[x86_64 x86 armeabi-v7a arm64-v8a]/libAgoraRawDataPlugin.so | Assets/Agora-RTC-Plugin/Agora-Unity-RTC-SDK/Plugins/Android/AgoraRtcEngineKit.plugin/libs/[x86_64 x86 armeabi-v7a arm64-v8a] |
You can run the built-in plug-in demo of the SDK. Experience the effect after the plug-in is turned on.