You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter项目模拟器运行崩溃提示‘Lost connection to device’求助

解决Flutter模拟器因androidx.window.extensions方法缺失崩溃的问题

问题原因

模拟器的Android系统版本对应的androidx.window.extensions扩展库版本过低,不包含addWindowLayoutInfoListener方法,而真机通常搭载了更新的系统或厂商适配的库,因此能正常运行。

解决方案

1. 升级模拟器系统版本

  • 打开Android Studio的Device Manager,删除旧模拟器设备,创建系统版本≥Android 12(API 31)的模拟器。
  • 说明:addWindowLayoutInfoListener方法是Android 12及以上版本的androidx.window.extensions库新增的,低版本系统模拟器无此方法实现。

2. 锁定androidx.window依赖版本

在Flutter项目的android/app/build.gradle文件中,添加或修改androidx.window的依赖:

dependencies {
    // 保留原有依赖,新增以下两行
    implementation 'androidx.window:window:1.0.0'
    implementation 'androidx.window:window-java:1.0.0'
}

执行以下命令重新构建项目:

flutter clean
flutter pub get
cd android && ./gradlew clean build
cd .. && flutter run

3. 禁用WindowManager扩展依赖(临时方案)

若暂时无法升级模拟器,可在android/app/src/main/AndroidManifest.xml中添加配置禁用系统扩展:

<application>
    <!-- 其他配置 -->
    <meta-data
        android:name="androidx.window.extensions.layout"
        android:value="disabled" />
</application>

此方案会让应用使用WindowManager默认实现,可能影响多窗口适配功能,但可快速解决崩溃问题。

内容的提问来源于stack exchange,提问作者Motaz khogali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 20:24:30