flutter开发一个跨平台的在线视频聊天在线教育应用

flutter开发一个跨平台的在线视频聊天及教育应用

flutter开发一个跨平台的在线视频聊天在线教育应用

今天我们来用flutter开发一个跨平台andriod ios web的在线视频聊天及教育应用,视频sdk主要用到了声网Agora 的sdk

这个示例向您展示如何使用 Agora Flutter SDK 构建一个简单的视频通话应用程序。它向您展示了如何:

加入/离开频道
静音/取消静音
切换摄像头
布局多个视频视图

创建一个声网帐户并获取一个 App ID

打开声网,网址:www.agora.io/cn/ 注册

flutter开发一个跨平台的在线视频聊天在线教育应用

在agora.io创建开发人员帐户并且通过实名认证。完成注册认证后过程后,您将被重定向到控制台页面。

flutter开发一个跨平台的在线视频聊天在线教育应用
在左侧的仪表板树中导航到项目 > 项目列表。创建一个项目后,在列表中就可以看到项目的appid了

将 App ID 复制到文本文件中。您将在启动应用程序时用到它。

下载本flutter 视频通话源码 Agora-Flutter-Quickstart-master.zip

一、更新并运行示例应用程序

打开settings.dart文件并添加 App ID。

const APP_ID ="";

在项目目录中运行packages get命令:

#install dependencies
flutter packages get

构建完成后,执行run命令启动应用程序。

#start app
flutter run

我们建议您在开发期间按照 flutter 官方引导推荐,使用 IDE(包括但不限于 VS Code)来控制整体构建过程

一、常见错误及解决办法

iOS 内存泄漏

如果你的 flutter channel 是 stable, PlatformView 会导致内存泄漏, 你可以运行 flutter channel beta

你可以参考这条 pull request

Android 黑屏

提示:请确保你所有的配置都正确,但是仍然是黑屏

如果你的 MainActivity 继承 io.flutter.embedding.android.FlutterActivity,并且你重写了 configureFlutterEngine 方法

请不要忘记添加 super.configureFlutterEngine(flutterEngine)

请不要添加 GeneratedPluginRegistrant.registerWith(flutterEngine), 插件现在会自动注册

你可以参考官方文档

Android Release 模式闪退

这个是代码混淆导致的,因为 flutter 默认设置了android.enableR8=true

在你的app/proguard-rules.pro文件中添加下面这行代码,以避免代码混淆:

-keep class io.agora.**{*;}

{{collectdata}}

网友评论0