flutter跑通腾讯云直播Demo
运行示例
前提条件
要求java jdk 11版本 并且配置到了环境变量 重要
要求flutter 版本 2.8.0 并且配置到了环境变量 重要
要求dart-sdk版本2.15 并且配置到了环境变量 重要
您已 注册腾讯云 账号,并完成 实名认证。
申请 SDKAPPID 和 SECRETKEY
- 登录实时音视频控制台,选择【开发辅助】>【快速跑通Demo】。
- 单击【立即开始】,输入您的应用名称,例如
TestTRTC
,单击【创建应用】。
环境要求:
运行出问题
-
Launching lib\main.dart on V2164A in debug mode... Running Gradle task 'assembleDebug'... Warning: The plugin path_provider_android requires Android SDK version 33. For more information about build configuration, see https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. Warning: The plugin shared_preferences_android requires Android SDK version 33. For more information about build configuration, see https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. Warning: The plugin url_launcher_android requires Android SDK version 33. For more information about build configuration, see https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. One or more plugins require a higher Android SDK version. Fix this issue by adding the following to C:\Users\Administrator\Desktop\ceshi\android\app\build.gradle: android { compileSdkVersion 33 ... } Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01 Warning: Mapping new ns http://schemas.android.com/repository/android/generic/02 to old ns http://schemas.android.com/repository/android/generic/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/02 to old ns http://schemas.android.com/sdk/android/repo/addon2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/03 to old ns http://schemas.android.com/sdk/android/repo/addon2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/02 to old ns http://schemas.android.com/sdk/android/repo/repository2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/03 to old ns http://schemas.android.com/sdk/android/repo/repository2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/03 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/02 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01 FAILURE: Build failed with an exception. * What went wrong: Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'. > Failed to find Build Tools revision 29.0.2 * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 12s Exception: Gradle task assembleDebug failed with exit code 1
-
怎么回事
-
这个错误通常是由于Flutter项目中的某些插件需要更高版本的Android SDK,而你的项目当前使用的Android SDK版本不符合要求所致。具体来说,错误信息中提到了需要 Android SDK 版本 33,而你当前的项目使用的版本较低。
要解决这个问题,你需要更新你的 Android 项目的编译 SDK 版本到 33。你可以按照错误信息中提供的建议,在你的项目的
android/app/build.gradle
文件中添加以下内容: -
android {compileSdkVersion 33... }
然后重新运行你的Flutter项目,应该就能够成功构建了。
-
问题
Warning: This version only understands SDK XML versions up to 2 but an SDK XML file of version 3 was encountered. This can happen if you use versions of Android Studio and the command-line tools that were released at different times. Warning: �����Ԫ�� (uri:"", local:"base-extension")������Ԫ��Ϊ<{}codename>,<{}layoutlib>,<{}api-level> FAILURE: Build failed with an exception. * What went wrong: Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'. > Failed to find Build Tools revision 30.0.2 * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 2m 41s Exception: Gradle task assembleDebug failed with exit code 1
怎么回事 -
这个错误提示表明你的项目中使用了一个不兼容的 Android SDK 版本。具体来说,错误信息中提到了需要 Build Tools 版本 30.0.2,但是你的环境中没有找到这个版本的构建工具。
要解决这个问题,你可以按照以下步骤操作:
- 打开 Android Studio,然后点击顶部菜单中的 “Tools” -> "SDK Manager"。
- 在 “SDK Platforms” 标签下,确保你已经安装了 Android 11.0(API level 30)的 SDK。
- 在 “SDK Tools” 标签下,确保你已经安装了 “Android SDK Build-Tools” 版本 30.0.2。
- 如果没有找到相应的版本,点击相应的复选框进行安装。
- 安装完成后,重新构建你的项目,应该就可以成功了。
如果你无法在 Android Studio 中找到所需的版本,你也可以手动下载并安装相应的 SDK 和构建工具。安装完成后,确保在你的项目中正确配置了使用这个版本的 SDK 和构建工具。
一旦你的环境中安装了所需的 SDK 和构建工具,重新运行你的 Flutter 项目,应该就能够成功构建了。
-
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':permission_handler:compileDebugAidl'.
> Failed to find Platform SDK with path: platforms;android-29* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.* Get more help at https://help.gradle.org
BUILD FAILED in 5s
Exception: Gradle task assembleDebug failed with exit code 1什么原因
-
这个错误提示表明在编译
permission_handler
这个库时,Gradle 找不到指定路径下的 Android 平台 SDK,路径为platforms;android-29
。要解决这个问题,你可以尝试以下步骤:
-
确保你的项目中包含了 Android 平台 SDK 版本为 29 的文件。你可以通过打开 Android Studio,然后点击顶部菜单中的 “Tools” -> "SDK Manager",在 “SDK Platforms” 标签下确认是否安装了 Android 10.0(API level 29)的 SDK。
-
如果没有安装,你可以在 SDK Manager 中选择相应的 SDK 版本进行安装。
-
如果你已经安装了对应的 SDK,但仍然出现这个错误,可能是 Gradle 配置有误。你可以检查你的
android/build.gradle
文件,确保compileSdkVersion
和targetSdkVersion
版本设置正确,指向了正确的 SDK 版本。 -
最后,如果以上步骤都没有解决问题,你可以尝试清理 Gradle 缓存并重新构建项目。可以通过在终端中运行以下命令来清理 Gradle 缓存:
-
-
-
flutter clean
然后重新运行你的 Flutter 项目。
通过这些步骤,应该能够解决你遇到的问题。
-
-
FAILURE: Build failed with an exception.* What went wrong: Could not determine the dependencies of task ':tencent_trtc_cloud:compileDebugAidl'. > Failed to find Platform SDK with path: platforms;android-28* Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights.* Get more help at https://help.gradle.orgBUILD FAILED in 5s
-
这个错误提示表明在编译
tencent_trtc_cloud
这个库时,Gradle 找不到指定路径下的 Android 平台 SDK,路径为platforms;android-28
。要解决这个问题,你可以尝试以下步骤:
-
确保你的项目中包含了 Android 平台 SDK 版本为 28 的文件。你可以通过打开 Android Studio,然后点击顶部菜单中的 “Tools” -> "SDK Manager",在 “SDK Platforms” 标签下确认是否安装了 Android 9.0(API level 28)的 SDK。
-
如果没有安装,你可以在 SDK Manager 中选择相应的 SDK 版本进行安装。
-
如果你已经安装了对应的 SDK,但仍然出现这个错误,可能是 Gradle 配置有误。你可以检查你的
android/build.gradle
文件,确保compileSdkVersion
和targetSdkVersion
版本设置正确,指向了正确的 SDK 版本。 -
最后,如果以上步骤都没有解决问题,你可以尝试清理 Gradle 缓存并重新构建项目。可以通过在终端中运行以下命令来清理 Gradle 缓存:
-
-
-
flutter clean
然后重新运行你的 Flutter 项目。
通过这些步骤,应该能够解决你遇到的问题。
-
-
/D:/flutter_windows_2.8.0-stable/.pub-cache/hosted/pub.flutter-io.cn/tencent_trtc_cloud-2.7.7/lib/trtc_cloud_listener.dart:661:25: Error: The getter 'Uint8List' isn't defined for the class 'TRTCAudioFrameListenerPlatformMethod'.- 'TRTCAudioFrameListenerPlatformMethod' is from 'package:tencent_trtc_cloud/trtc_cloud_listener.dart' ('/D:/flutter_windows_2.8.0-stable/.pub-cache/hosted/pub.flutter-io.cn/tencent_trtc_cloud-2.7.7/lib/trtc_cloud_listener.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'Uint8List'.audioFrame.data = Uint8List.fromList(List<int>.from(params['data']));^^^^^^^^^ /D:/flutter_windows_2.8.0-stable/.pub-cache/hosted/pub.flutter-io.cn/tencent_trtc_cloud-2.7.7/lib/trtc_cloud_listener.dart:677:30: Error: The getter 'Uint8List' isn't defined for the class 'TRTCAudioFrameListenerPlatformMethod'.- 'TRTCAudioFrameListenerPlatformMethod' is from 'package:tencent_trtc_cloud/trtc_cloud_listener.dart' ('/D:/flutter_windows_2.8.0-stable/.pub-cache/hosted/pub.flutter-io.cn/tencent_trtc_cloud-2.7.7/lib/trtc_cloud_listener.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'Uint8List'.audioFrame.extraData = Uint8List.fromList(List<int>.from(params['extraData']));^^^^^^^^^FAILURE: Build failed with an exception.* Where: Script 'D:\flutter_windows_2.8.0-stable\packages\flutter_tools\gradle\flutter.gradle' line: 1070* What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'. > Process 'command 'D:\flutter_windows_2.8.0-stable\bin\flutter.bat'' finished with non-zero exit value 1* Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights.* Get more help at https://help.gradle.orgBUILD FAILED in 24s Exception: Gradle task assembleDebug failed with exit code 1怎么回事
-
这个错误提示表明在编译过程中出现了无法识别的类或方法。具体来说,代码中引用了不存在的
Uint8List
类型。要解决这个问题,你可以尝试以下步骤:
-
检查依赖版本: 确保你使用的
tencent_trtc_cloud
库的版本与你的代码兼容。有时候更新库版本或者降低库版本可以解决这类问题。 -
检查引用路径: 确保
Uint8List
类型被正确地引入。在 Dart 中,Uint8List
类型通常是从dart:typed_data
中引入的。你可以检查一下是否在文件开头引入了该类:
-
-
-
import 'dart:typed_data';
-
检查参数类型: 确保传递给
Uint8List.fromList
方法的参数类型是List<int>
。你可以添加一些调试语句,确认参数类型和值是否正确。 -
清理缓存并重新构建: 有时候清理 Flutter 和 Gradle 的缓存可以解决一些编译问题。你可以尝试运行
flutter clean
命令清理 Flutter 缓存,然后重新构建项目。 -
查看文档和示例: 如果以上方法都没有解决问题,你可以查看相关库的文档和示例,看是否有类似的用法示例或者已知的解决方法。
通过以上步骤,你应该能够解决这个编译错误。如果问题仍然存在,可以提供更多的代码片段或者详细的错误信息,这样我可以给出更具体的帮助。
-
-
ע: D:\flutter_windows_2.8.0-stable\.pub-cache\hosted\pub.flutter-io.cn\path_provider_android-2.0.12\android\src\main\java\io\flutter\plugins\pathprovider\PathProviderPlugin.javaʹ����δ������ȫ�IJ����� ע: �й���ϸ��Ϣ, ��ʹ�� -Xlint:unchecked ���±��롣 ע: ijЩ�����ļ�ʹ�û����ѹ�ʱ�� API�� ע: �й���ϸ��Ϣ, ��ʹ�� -Xlint:deprecation ���±��롣 ע: ijЩ�����ļ�ʹ����δ������ȫ�IJ����� ע: �й���ϸ��Ϣ, ��ʹ�� -Xlint:unchecked ���±��롣乱码
-
这些警告信息看起来是由于编译过程中使用了非 ASCII 字符,导致终端输出了乱码。虽然这些警告信息看起来比较杂乱,但通常不会影响到你的应用程序的运行。
根据警告信息中提到的路径
D:\flutter_windows_2.8.0-stable\.pub-cache\hosted\pub.flutter-io.cn\path_provider_android-2.0.12\android\src\main\java\io\flutter\plugins\pathprovider\PathProviderPlugin.java
,似乎是在处理路径提供者插件(path_provider)的 Android 部分时出现了一些问题。但从这个信息来看,并没有提供具体的错误信息或者异常。要解决这个问题,你可以尝试以下几点:
-
清理缓存并重新构建: 运行
flutter clean
清理 Flutter 缓存,然后重新构建你的应用程序。 -
检查依赖版本: 确保你使用的
path_provider
插件的版本是最新的,并且与你的 Flutter 版本兼容。 -
查看详细日志: 如果上述步骤无法解决问题,你可以尝试添加
-v
参数重新运行构建命令,以获取更详细的日志信息,帮助你定位问题所在。 -
更新插件: 如果问题依然存在,可以尝试更新相关的插件或者依赖库到最新版本,看是否有已知的问题修复。
通过以上步骤,你应该能够解决这个警告信息所引发的问题。如果问题依然存在,欢迎提供更多的详细信息,我会尽力帮助你解决。
-
安装到手机如果白屏的话,请关闭app后台让后将 ,让后重新启动app就可以看到所有模块按钮了
相关文章:

flutter跑通腾讯云直播Demo
运行示例 前提条件 要求java jdk 11版本 并且配置到了环境变量 重要 要求flutter 版本 2.8.0 并且配置到了环境变量 重要 要求dart-sdk版本2.15 并且配置到了环境变量 重要 您已 注册腾讯云 账号,并完成 实名认证。 申请 SDKAPPID 和 SECRETKEY 登录实时音视频控…...
飞机降落蓝桥杯[2023蓝桥省赛B组]
2023蓝桥省赛B组 B题 飞机降落 题解 标准深搜板子题,难度不大 #include<bits/stdc.h> using namespace std; #define MAX 10 struct node{int t,d,l;//t:飞机到达时间 d:飞机最大盘旋时间 l:飞机降落所需时间bool v;//标记此架飞机是否被搜索过 用于剪枝 };…...

如何动态渲染HTML内容?用v-html!
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

EFcore 6 连接oracle19 WinForm vs2022
用EFcore访问Oracle,终于不需要Oracle的什么安装包了,直接在VS2022中就可以轻松搞定。在csdn上看到一哥们的帖子,测试了一下,发现很方便。使用的场景是:VS2022中EFcore6。经过测试,同 Navicat Premium 16比…...
(delphi11最新学习资料) Object Pascal 学习笔记---第9章第2节(finally代码块)
9.2 finally 代码块 还有第四个用于异常处理的关键字,我已经提到过,但到目前为止还没有使用过,那就是 finally。finally块用于执行一些应始终执行的操作(通常是清理操作)。事实上,无论是否发生异常&…...

220 基于matlab的考虑直齿轮热弹耦合的动力学分析
基于matlab的考虑直齿轮热弹耦合的动力学分析,输入主动轮、从动轮各类参数,考虑润滑油温度、润滑油粘度系数等参数,输出接触压力、接触点速度、摩擦系数、对流传热系数等结果。程序已调通,可直接运行。 220直齿轮热弹耦合 接触压力…...

Intrigue Core:一款功能强大的攻击面枚举引擎
关于Intrigue Core Intrigue Core是一款功能强大的开源攻击面枚举引擎,该工具可以帮助广大研究人员更好地管理应用程序的攻击面。 Intrigue Core集成了各种各样的安全数据源,可以将这些数据提取到标准化的对象模型中,并通过图形数据库跟踪关…...

【精品PPT】智慧路灯大数据平台整体建设实施方案(免费下载)
1、知识星球下载: 如需下载完整PPTX可编辑源文件,请前往星球获取:https://t.zsxq.com/19QeHVt8y 2、免费领取步骤: 【1】关注公众号 方案驿站 【2】私信发送 【智慧路灯大数据平台】 【3】获取本方案PDF下载链接,直…...

idea 中运行spring boot 项目报 Command line is too long的解决办法。
Command line is too long 在这里选择edit configures 选择shrten command line , 选择 jar manifest 运行即可。...

Windows终端添加git bash
环境:windows11 终端:windows terminal git bash默认的界面不太好看,添加到终端会比较好用 步骤 打开 windows terminal,在向下箭头 点击 设置左侧栏 点击 “添加新配置文件”,如下图配置,主要修改项&…...

【方法】PDF密码如何取消?
对于重要的PDF文件,很多人会设置密码保护,那后续不需要保护了,如何取消密码呢? 今天我们来看看,PDF的两种密码,即“限制密码”和“打开密码”,是如何取消的,以及忘记密码的情况要怎…...

怎么开发一个预约小程序_一键预约新体验
预约小程序,让生活更便捷——轻松掌握未来,一键预约新体验 在快节奏的现代生活中,我们总是在不断地奔波,为了工作、为了生活,不停地忙碌着。然而,在这繁忙的生活中,我们是否曾想过如何更加高效…...

JavaScript_注释数据类型
JavaScript_语法_注释&数据类型: 1.2注释: 1.单行注释://注释内容 2.多行注释:/*注释内容*/ 1.3数据类型: 1.原始数据类型(基本数据类型):(只有这五种) 1.number:数字…...
蓝桥杯2020年第十一届省赛 CC++ 研究生组2.0
约数个数 #include<iostream> #include<cmath> using namespace std; int main(){int n 78120, ans 0, sqr sqrt(n);for(int i 1; i < sqr; i){if(n % i 0){ans;//printf("%d,", i);if(i * i ! n) {ans;//printf("%d,", n / i);}}}//…...
SOCKS5代理、代理IP、跨界电商、游戏技术与网络安全的综合探讨
在全球经济一体化的大背景下,"出海"已成为许多企业尤其是电商和游戏行业的重要战略方向。然而,随着企业业务的扩展到海外市场,网络安全、数据隐私和内容访问等问题也随之而来。本文将深入探讨SOCKS5代理、代理IP在跨界电商和游戏行…...

关于HTTP1.0、1.1、1.x、2.0、3.0与HTTPS之间的理解
关于HTTP1.0、1.1、1.x、2.0、3.0与HTTPS之间的理解 HTTP的由来 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Eng…...
useRef总结
一、使用ref引用值 在react中ref的主要用途是用来获取DOM元素或者某个组件实例的引用。当你想访问真实的DOM节点,或者需要在组件之间共享可变数据且不需要触发重新渲染时,通常会使用ref。在vue中ref是响应式的,当数据发生改变时,相…...

计算机网络知识等汇总补充
计算机网络知识汇总补充 一、四次挥手1、为什么TCP要等待2MSL2、如果说一个系统中,有大量的time_wait和close_wait,会是什么原因? 二、你是怎么解决粘包问题?三、你觉得哪些场景适合redis四、redis的持久化策略五、你会怎么保证my…...

word中插入mathtype版的符号后,行间距变大解决方法
问题 解决方法 选中该段,设置固定值行距。如果是宋体,小四,1.25行距,那么固定值就为20磅。 成功解决。...
怎么给html文件本地启动一个服务去访问
首先得先安装node 要启动一个本地的 HTTP 服务器,请先安装 Node.js,然后通过命令行在 HTML 文件所在文件夹下运行 npx serve...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...

ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...