使用 Agora SDK 的 Flutter Android 项目:'错误:找不到符号'

Posted

技术标签:

【中文标题】使用 Agora SDK 的 Flutter Android 项目:\'错误:找不到符号\'【英文标题】:Flutter Android project with Agora SDK: 'error: cannot find symbol'使用 Agora SDK 的 Flutter Android 项目:'错误:找不到符号' 【发布时间】:2022-01-15 19:39:19 【问题描述】:

我正在开发一个 Flutter 项目,我必须在本机端实现部分应用功能。在 ios 端通过 Agora SDK 成功集成屏幕共享功能后,我现在正在研究 android 部分。不幸的是,我不断收到此错误:

error: cannot find symbol
import io.agora.rtc.RtcEngine;
                   ^
symbol:   class RtcEngine
location: package io.agora.rtc

我正在关注 Agora 的这个教程:https://docs.agora.io/en/Interactive%20Broadcast/screensharing_android?platform=Android#use-multi-processing-to-send-video-streams-from-screen-sharing-and-local-camera

显然在导入时找不到来自 Agora RTC 包的 RtcEngine 的特定符号,即使编译器知道包本身(将包名更改为不存在的包名会导致不同的错误,它说这个包是未知的)。由于这不是问题,我想知道为什么不应该知道其中的这个符号。

你们之前有没有人遇到过这个或类似的问题?

【问题讨论】:

【参考方案1】:

我终于找到了解决问题的方法。由于io.agora.rtc 包中的未知符号导致应用程序无法构建的原因是实际包确实没有作为依赖项添加到项目中的 gradle 文件 (build.gradle)。尽管如此,编译器知道io.agora.rtc 的包路径的原因是项目中存在路径io/agora/rtc。由于像RtcEngine 这样的符号不在其中,也没有通过任何不同的方式导入,编译器抛出了这个错误。因此,通过 gradle 文件导入包会添加缺少的符号并重新构建应用程序。

希望这些知识对您有所帮助!祝你有美好的一天。

【讨论】:

以上是关于使用 Agora SDK 的 Flutter Android 项目:'错误:找不到符号'的主要内容,如果未能解决你的问题,请参考以下文章

Flutter - webRTC 视频通话信号不起作用

如何在 Flutter 上布局 Agora 视频屏幕?

Flutter 中的 Agora 视频通话问题

如何在 Flutter 中使用 Agora 实现 Callkeep?

Flutter - agora - 如何做直播

在flutter中使用callkeep和agora时无法通信