安卓上当 App 退出后,前台服务并没有关闭干净
Version of the agora_rtc_engine
6.3.0
Platforms affected
- [x] Android
- [ ] iOS
- [ ] macOS
- [ ] Windows
- [ ] Web
Steps to reproduce
- 加入频道,并确保前台服务启动
- 退出 app,再次打开 app 会立马显示正在使用麦克风,并且无法加入频道,报错
AgoraRtcException(-17, null) - 关闭 app,然后再次打开,包括之后都正常
Expected results
不会提示正在使用麦克风,并可以正常加入频道
Actual results
打开会显示正在使用麦克风,无法加入频道,并报错AgoraRtcException(-17, null)
Code sample
你们的示例 https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK/tree/main/example 这个示例的代码对于目前的 Flutter 有点陈旧,需要更新一下一些文件
android\build.gradle
allprojects {
repositories {
google()
mavenCentral()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
}
android\settings.gradle
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}()
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0" // apply true
id "com.android.application" version "8.7.0" apply false
id "org.jetbrains.kotlin.android" version "1.9.10" apply false
}
include ":app"
android\app\build.gradle
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
android {
namespace "io.agora.agora_rtc_ng_example"
compileSdk = 35
// compileSdkVersion 34
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "io.agora.agora_rtc_ng_example"
minSdkVersion 21
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
}
flutter {
source '../..'
}
dependencies {
def devFile = project.file("${rootProject.projectDir.getParentFile().parentFile}/android/.plugin_dev")
if (devFile.exists()) {
implementation fileTree(dir: "${rootProject.projectDir.getParentFile().parentFile}/android/libs", include: ["*.aar"])
}
}
Screenshots or Video
Screenshots / Video demonstration
https://github.com/user-attachments/assets/09a4055b-b390-4cbd-9854-9ad1506caaea
Logs
Logs
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
Launching lib\main.dart on sdk gphone64 x86 64 in debug mode...
2
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
√ Built build\app\outputs\flutter-apk\app-debug.apk
Error: ADB exited with exit code 1
Performing Streamed Install
adb: failed to install F:\icraf\Desktop\Agora-Flutter-SDK-main\example\build\app\outputs\flutter-apk\app-debug.apk: Failure [INSTALL_FAILED_VERSION_DOWNGRADE: Downgrade detected: Update version code 1 is older than current 4001]
Uninstalling old version...
I/flutter (21889): [IMPORTANT:flutter/shell/platform/android/android_context_gl_impeller.cc(94)] Using the Impeller rendering backend (OpenGLES).
Connecting to VM Service at ws://127.0.0.1:14612/el0Wrwo9NlU=/ws
Connected to the VM Service.
I/Choreographer(21889): Skipped 79 frames! The application may be doing too much work on its main thread.
I/_rtc_ng_example(21889): Compiler allocated 5106KB to compile void android.view.ViewRootImpl.performTraversals()
I/WindowExtensionsImpl(21889): Initializing Window Extensions, vendor API level=9, activity embedding enabled=true
W/HWUI (21889): Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
W/HWUI (21889): Failed to initialize 101010-2 format, error = EGL_SUCCESS
E/libEGL (21889): called unimplemented OpenGL ES API
D/permissions_handler(21889): No permissions found in manifest for: []33
I/Choreographer(21889): Skipped 59 frames! The application may be doing too much work on its main thread.
D/WindowLayoutComponentImpl(21889): Register WindowLayoutInfoListener on Context=io.agora.agora_rtc_ng_example.MainActivity@73b08af, of which baseContext=android.app.ContextImpl@c65efd
D/ProfileInstaller(21889): Installing profile for io.agora.agora_rtc_ng_example
E/libEGL (21889): called unimplemented OpenGL ES API
D/InsetsController(21889): hide(ime(), fromIme=false)
I/ImeTracker(21889): io.agora.agora_rtc_ng_example:3e50575e: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
E/libEGL (21889): called unimplemented OpenGL ES API
I/spdlog (21889): [2025-05-07 10:00:20.135][21889][I][iris_logger.cc:157] reset logger to /agora-iris.log
I/spdlog (21889): [2025-05-07 10:00:20.135][21889][I][iris_logger.cc:159] iris version: 4.5.2-build.1 commit: 4eee5cf6a97f30848b12b95873f7a3ba72e710cf build: 34812
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libAgoraRtcWrapper.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk!classes2.dex): ok
D/CompatChangeReporter(21889): Compat change id reported: 312399441; UID 10211; state: ENABLED
I/spdlog (21889): [2025-05-07 10:00:20.166][21889][I][iris_logger.cc:157] reset logger to /storage/emulated/0/Android/data/io.agora.agora_rtc_ng_example/files/agora-iris.log
I/spdlog (21889): [2025-05-07 10:00:20.166][21889][I][iris_logger.cc:159] iris version: 4.5.2-build.1 commit: 4eee5cf6a97f30848b12b95873f7a3ba72e710cf build: 34812
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libaosl.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora-ffmpeg.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora-fdkaac.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora-soundtouch.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora-rtc-sdk.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_ai_echo_cancellation_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_ai_echo_cancellation_ll_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_ai_noise_suppression_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_ai_noise_suppression_ll_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_audio_beauty_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_clear_vision_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_content_inspect_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_face_capture_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_face_detection_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_lip_sync_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_screen_capture_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_segmentation_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_spatial_audio_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_video_av1_decoder_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_video_av1_encoder_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_video_decoder_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_video_encoder_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
D/nativeloader(21889): Load /data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/lib/x86_64/libagora_video_quality_analyzer_extension.so using class loader ns clns-7 (caller=/data/app/~~uUGfo4I5iVwhbObQxSJ22A==/io.agora.agora_rtc_ng_example-xHqLnEK21iD6j_XF2cf_Cg==/base.apk): ok
I/spdlog (21889): [2025-05-07 10:00:20.231][21889][I][iris_jni_rtc.cc:116] loaded extensions: agora_ai_echo_cancellation_extension,agora_ai_echo_cancellation_ll_extension,agora_ai_noise_suppression_extension,agora_ai_noise_suppression_ll_extension,agora_audio_beauty_extension,agora_clear_vision_extension,agora_content_inspect_extension,agora_face_capture_extension,agora_face_detection_extension,agora_lip_sync_extension,agora_screen_capture_extension,agora_segmentation_extension,agora_spatial_audio_extension,agora_video_av1_decoder_extension,agora_video_av1_encoder_extension,agora_video_decoder_extension,agora_video_encoder_extension,agora_video_quality_analyzer_extension,
I/_rtc_ng_example(21889): AssetManager2(0x7293063ca5b8) locale list changing from [] to [en-US]
W/WindowOnBackDispatcher(21889): OnBackInvokedCallback is not enabled for the application.
W/WindowOnBackDispatcher(21889): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.
I/spdlog (21889): [2025-05-07 10:00:20.600][21990][I][iris_rtc_api_engine.cc:436] api name RtcEngine_initialize_0320339 params "{"context":{"appId":"a03***************908"}}"
I/spdlog (21889): [2025-05-07 10:00:20.602][21990][I][iris_logger.cc:157] reset logger to /storage/emulated/0/Android/data/io.agora.agora_rtc_ng_example/files/agora-iris.log
I/spdlog (21889): [2025-05-07 10:00:20.603][21990][I][iris_logger.cc:159] iris version: 4.5.2-build.1 commit: 4eee5cf6a97f30848b12b95873f7a3ba72e710cf build: 34812
E/SQLiteLog(21889): (1) no such column: key in "select key, value, expired from "android_metadata";"
D/CommonUtility(21889): registerSystemEventListener: io.agora.utils2.internal.RtcSystemEventListener
D/CommonUtility(21889): onNetworkChange: io.agora.utils2.internal.RtcSystemEventListener
D/RtcSystemEventListener(21889): onNetworkChange:
D/AudioSystem(21889): onNewService: media.audio_policy service obtained 0x7293e63ce890
D/AudioSystem(21889): getService: checking for service media.audio_policy: 0x7293e63ce890
I/_rtc_ng_example(21889): hiddenapi: Accessing hidden method Landroid/media/AudioManager;->getDevicesForStream(I)I (runtime_flags=0, domain=platform, api=unsupported) from Lio/agora/rtc2/internal/AudioRoutingController; (domain=app) using reflection: allowed
4
W/VideoCapabilities(21889): Unsupported mime video/apv
I/spdlog (21889): [2025-05-07 10:00:21.107][21990][I][iris_rtc_rendering_impl.cc:64] initialize rendering
I/spdlog (21889): [2025-05-07 10:00:21.155][21990][I][iris_rtc_rendering_impl.cc:49] register video frame renderer observer 125972032370024
I/spdlog (21889): [2025-05-07 10:00:21.155][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_initialize_0320339 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:21.158][21990][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setAppType params "{"appType":4}"
I/spdlog (21889): [2025-05-07 10:00:21.162][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setAppType result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:21.197][21990][I][iris_rtc_api_engine.cc:438] api name RtcEngine_registerEventHandler_5fc0465 params "{}"
I/spdlog (21889): [2025-05-07 10:00:21.197][21990][I][iris_rtc_api_engine.cc:490] api name RtcEngine_registerEventHandler_5fc0465 extened params "{"event":125975522055664}"
I/spdlog (21889): [2025-05-07 10:00:21.198][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_registerEventHandler_5fc0465 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:21.205][21990][I][iris_rtc_api_engine.cc:438] api name RtcEngine_enableAudio params "{}"
I/spdlog (21889): [2025-05-07 10:00:21.207][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_enableAudio result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:21.219][21990][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setClientRole_3426fa6 params "{"role":1,"options":null}"
I/spdlog (21889): [2025-05-07 10:00:21.286][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setClientRole_3426fa6 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:21.294][21990][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setAudioProfile_d944543 params "{"profile":0,"scenario":3}"
I/spdlog (21889): [2025-05-07 10:00:21.347][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setAudioProfile_d944543 result 0 outdata {"result":0}
E/libEGL (21889): called unimplemented OpenGL ES API
I/spdlog (21889): [2025-05-07 10:00:23.081][21990][I][iris_rtc_api_engine.cc:436] api name RtcEngine_joinChannel_cdbb747 params "{"token":"007e***************AA==","channelId":"test","uid":0,"options":{"clientRoleType":1,"channelProfile":1}}"
I/spdlog (21889): [2025-05-07 10:00:23.123][21990][I][iris_rtc_api_engine.cc:504] api name RtcEngine_joinChannel_cdbb747 result 0 outdata {"result":0}
D/AudioSystem(21889): onNewServiceWithAdapter: media.audio_flinger service obtained 0x7292d649cc00
D/AudioSystem(21889): getService: checking for service media.audio_flinger: 0x7293e63b12e0
D/AudioSystem(21889): getClient: checking for service: 0x0
E/AudioRecord(21889): getMinFrameCount(): AudioSystem could not query the input buffer size for sampleRate 48000, format 0x1, channelMask 0xc; status -19
D/AudioSystem(21889): getService: checking for service media.audio_flinger: 0x7293e63b12e0
D/AudioTrack(21889): getTimestamp_l(208): device stall time corrected using current time 35406031805200
2
E/libEGL (21889): called unimplemented OpenGL ES API
W/WindowOnBackDispatcher(21889): sendCancelIfRunning: isInProgress=false callback=android.view.ViewRootImpl$$ExternalSyntheticLambda13@31b88e
D/ViewRootImpl(21889): Skipping stats log for color mode
I/flutter (21889): Receive the onDetachedFromEngine callback, clean the native resources.
D/CommonUtility(21889): onForegroundChanged() false
I/flutter (22148): [IMPORTANT:flutter/shell/platform/android/android_context_gl_impeller.cc(94)] Using the Impeller rendering backend (OpenGLES).
I/flutter (22148): | JPUSH | Flutter | addEventHandler:
I/flutter (22148): | JPUSH | Flutter | setAuth:
I/flutter (22148): | JPUSH | Flutter | setup:
I/flutter (22148): | JPUSH | Flutter | applyPushAuthority:
2
I/flutter (22148): | JPUSH | Flutter | _handleMethod:
W/AudioTrack(21889): restartIfDisabled(208): releaseBuffer() track 0x7292363f6650 disabled due to previous underrun, restarting
D/AudioTrack(21889): getTimestamp_l(208): device stall time corrected using current time 35428656296200
I/flutter (21889): [IMPORTANT:flutter/shell/platform/android/android_context_gl_impeller.cc(94)] Using the Impeller rendering backend (OpenGLES).
D/AutofillManager(21889): Fill dialog is enabled:false, hints=[password, passwordAuto, creditCardNumber, creditCardSecurityCode, creditCardExpirationDate]
I/Choreographer(21889): Skipped 85 frames! The application may be doing too much work on its main thread.
W/HWUI (21889): Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
W/HWUI (21889): Failed to initialize 101010-2 format, error = EGL_SUCCESS
E/libEGL (21889): called unimplemented OpenGL ES API
D/permissions_handler(21889): No permissions found in manifest for: []33
D/CommonUtility(21889): onForegroundChanged() true
I/Choreographer(21889): Skipped 35 frames! The application may be doing too much work on its main thread.
D/WindowLayoutComponentImpl(21889): Register WindowLayoutInfoListener on Context=io.agora.agora_rtc_ng_example.MainActivity@a8d4c09, of which baseContext=android.app.ContextImpl@5f7627
D/InsetsController(21889): hide(ime(), fromIme=false)
I/ImeTracker(21889): io.agora.agora_rtc_ng_example:69921fcf: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
E/libEGL (21889): called unimplemented OpenGL ES API
I/_rtc_ng_example(21889): AssetManager2(0x7293063a6398) locale list changing from [] to [en-US]
W/WindowOnBackDispatcher(21889): OnBackInvokedCallback is not enabled for the application.
W/WindowOnBackDispatcher(21889): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.
I/spdlog (21889): [2025-05-07 10:00:57.679][22405][I][iris_rtc_api_engine.cc:436] api name RtcEngine_initialize_0320339 params "{"context":{"appId":"a03***************908"}}"
I/spdlog (21889): [2025-05-07 10:00:57.682][22405][I][iris_rtc_rendering_impl.cc:64] initialize rendering
I/spdlog (21889): [2025-05-07 10:00:57.692][22405][I][iris_rtc_rendering_impl.cc:49] register video frame renderer observer 125972032157192
I/spdlog (21889): [2025-05-07 10:00:57.694][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_initialize_0320339 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:57.697][22405][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setAppType params "{"appType":4}"
I/spdlog (21889): [2025-05-07 10:00:57.703][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setAppType result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:57.720][22405][I][iris_rtc_api_engine.cc:438] api name RtcEngine_registerEventHandler_5fc0465 params "{}"
I/spdlog (21889): [2025-05-07 10:00:57.720][22405][I][iris_rtc_api_engine.cc:490] api name RtcEngine_registerEventHandler_5fc0465 extened params "{"event":125975522327824}"
I/spdlog (21889): [2025-05-07 10:00:57.720][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_registerEventHandler_5fc0465 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:57.720][22405][I][iris_rtc_api_engine.cc:438] api name RtcEngine_enableAudio params "{}"
I/spdlog (21889): [2025-05-07 10:00:57.722][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_enableAudio result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:57.740][22405][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setClientRole_3426fa6 params "{"role":1,"options":null}"
I/spdlog (21889): [2025-05-07 10:00:57.756][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setClientRole_3426fa6 result 0 outdata {"result":0}
I/spdlog (21889): [2025-05-07 10:00:57.801][22405][I][iris_rtc_api_engine.cc:438] api name RtcEngine_setAudioProfile_d944543 params "{"profile":0,"scenario":3}"
I/spdlog (21889): [2025-05-07 10:00:57.804][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_setAudioProfile_d944543 result 0 outdata {"result":0}
E/libEGL (21889): called unimplemented OpenGL ES API
I/spdlog (21889): [2025-05-07 10:01:05.052][22405][I][iris_rtc_api_engine.cc:436] api name RtcEngine_joinChannel_cdbb747 params "{"token":"007e***************AA==","channelId":"test","uid":0,"options":{"clientRoleType":1,"channelProfile":1}}"
I/spdlog (21889): [2025-05-07 10:01:05.055][22405][I][iris_rtc_api_engine.cc:504] api name RtcEngine_joinChannel_cdbb747 result 0 outdata {"result":-17}
E/libEGL (21889): called unimplemented OpenGL ES API
Flutter Doctor output
Doctor output
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
[√] Flutter (Channel stable, 3.29.2, on Microsoft Windows [版本 10.0.19045.5737], locale zh-CN) [507ms]
• Flutter version 3.29.2 on channel stable at E:\DevEnv\flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision c236373904 (8 weeks ago), 2025-03-13 16:17:06 -0400
• Engine revision 18b71d647a
• Dart version 3.7.2
• DevTools version 2.42.3
• Pub download mirror https://pub.flutter-io.cn
• Flutter download mirror https://storage.flutter-io.cn
[√] Windows Version (10 专业版 64 位, 22H2, 2009) [3.3s]
[√] Android toolchain - develop for Android devices (Android SDK version 36.0.0) [2.6s]
• Android SDK at E:\DevEnv\AndroidSDK
• Platform android-36, build-tools 36.0.0
• ANDROID_HOME = E:\DevEnv\AndroidSDK
• Java binary at: E:\DevEnv\Openjdk\zulu\zulu17.44.15-ca-jdk17.0.8-win_x64\bin\java
This JDK is specified in your Flutter configuration.
To change the current JDK, run: `flutter config --jdk-dir="path/to/jdk"`.
• Java version OpenJDK Runtime Environment Zulu17.44+15-CA (build 17.0.8+7-LTS)
• All Android licenses accepted.
[X] Chrome - develop for the web (Cannot find Chrome executable at .\Google\Chrome\Application\chrome.exe) [89ms]
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.11.3) [88ms]
• Visual Studio at E:\Develop\Microsoft Visual Studio\2022\Community
• Visual Studio Community 2022 version 17.11.35303.130
• Windows 10 SDK version 10.0.22621.0
[√] Android Studio (version 2024.3) [17ms]
• Android Studio at E:\Develop\AndroidStudio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version openjdk version "21.0.6" 2025-01-21
[√] IntelliJ IDEA Ultimate Edition (version 2025.1) [16ms]
• IntelliJ at E:\Develop\IntelliJ IDEA
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
[√] VS Code (version 1.99.3) [15ms]
• VS Code at C:\Users\icraf\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.110.0
[√] Connected device (4 available) [1,411ms]
• Mi MIX 2 (mobile) • 192.168.1.238:39660 • android-arm64 • Android 15 (API 35)
• sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64 • Android 16 (API 36) (emulator)
• Windows (desktop) • windows • windows-x64 • Microsoft Windows [版本 10.0.19045.5737]
• Edge (web) • edge • web-javascript • Microsoft Edge 136.0.3240.50
[√] Network resources [851ms]
• All expected network resources are available.
! Doctor found issues in 1 category.
@No06 首先很感谢你的反馈,其次请勿使用6.3.0,如果是首次接入五特殊需要请直接使用 6.5.1,该版本有对android project进行升级,我们ci有对3.7-3.24.5进行兼容测试。还请麻烦进行升级后再次测试?
感谢回复 我检查了一下我用的是最新的6.5.2,同样是上述问题
@No06 17 代表 reject,重复加入的意思 https://doc.shengwang.cn/api-ref/rtc/windows/API/enum_errorcodetype#ERR_JOIN_CHANNEL_REJECTED
这两天事情比较多,明天会去调查一下
@No06 抱歉这么久回复,我们在Android 15/16 上复现了该问题,并且不限于Flutter SDK 客户端,有任何进展后都会通知你
能复现就好
This issue is stale because it has been open 14 days with no activity. Remove stale label or comment or this will be closed in 5 days.