此 SDK 基于 uni-app 以及 Agora Android 和 iOS 的视频 SDK 实现。
需要同时引用以下两个插件,JS 插件主要是为了做代码提示,且包含一些JS的逻辑,便于开发者使用 Native 插件
git clone https://github.com/AgoraIO-Community/Agora-Uniapp-SDK.git
cd Agora-Uniapp-SDK
yarn
随后拷贝 lib/commonjs 中生成的源代码到你的工程
如果你的 uni-app 项目支持 TypeScript, 则直接拷贝 src 内的源代码到你的工程即可
sh ./install.sh
并确认 ios/libs 目录中包含 .framework 文件
- Android:UniPlugin-Hello-AS
- iOS:HBuilder-uniPluginDemo
- 在 settings.gradle 中添加
include ':uniplugin_agora_rtc'
project(':uniplugin_agora_rtc').projectDir = new File(rootProject.projectDir, 'android')
- 在 app/build.gradle 中添加
implementation project(':uniplugin_agora_rtc')
在 Xcode 中右键 HBuilder-uniPlugin 工程,并点击 Add Files to "HBuilder-uniPlugin", 选中 AgoraRtcUniPlugin.xcodeproj 并添加
在 Xcode 中点击 HBuilder-uniPlugin 工程,并点击 HBuilder Target,选中 Build Phases
- 在 Dependencies 中添加 AgoraRtcUniPlugin
- 在 Link Binary With Libraries 中添加 AgoraRtcUniPlugin.framework
- 在 Embed Frameworks 中添加 AgoraRtcKit.framework Agorafdkaac.framework Agoraffmpeg.framework AgoraSoundTouch.framework (需要通过 Add Other... 选择 ios/libs 目录中的 .framework 文件添加)
// 指向插件JS源码在你的工程中的相对路径,比如
import RtcEngine from '../../components/Agora-RTC-JS/index';
RtcEngine.create('你的AppID').then((engine) => {
console.log('init success');
});
插件绝大部分 API 都使用 Promise 包装,为保证调用时序,请使用 await 关键字
- 完整的 API Doc 在开发者中心
- 反馈问题
- uni-app 原生插件
MIT