我在Android Studio中遇到Flutter的问题,每当我运行Flutter应用程序时,它都会显示此错误; “连接服务协议时出错:HttpException:在接收到完整的报头之前,连接已关闭,uri = http://127.0.0.1:53305/9So9Wn564F4=/ws”,它将与模拟器中的应用程序“断开连接”。 该应用程序仍将运行,但是我不能使用“热重装”之类的功能。
我在Windows计算机上,Flutter Doctor并未指出任何错误。 我曾尝试阅读github帖子上的类似问题,但无法解决问题。
你们中有人对如何解决此问题有任何想法吗?
仅在仿真器中运行在实际设备上时,不会发生此问题。
答案 0 :(得分:5)
如果您返回以前的android版本(Android Pie),您将不再有此问题,它仅与android的最新版本(Q,29)有关,在其他版本中,您将不再具有问题。
答案 1 :(得分:3)
嘿,我也遇到了同样的问题。 我无法在 Windows 中使用模拟器,因为我的电脑是非常低端的电脑。 所以,我不得不用我的手机代替。它是带有 Android 6.0.1 (Android Marshmallow) 的三星 Galaxy J2 Pro (SM-J210F)。 之前经常用那部手机开发flutter应用,突然就遇到这个问题了。
这是我尝试在 VS-Code(v1.52.0) 中运行“Flutter Attach”时发生的事情。
颤动附加 --machine -d 420054e7960eb400
StateError: Bad state: 现有 VM 服务客户端阻止 DDS 控制。
#0 DartDevelopmentService.startDartDevelopmentService (package:flutter_tools/src/base/dds.dart:83:11)
<asynchronous suspension>
#1 FlutterDevice.connect.<anonymous closure> (package:flutter_tools/src/resident_runner.dart:249:11)
<asynchronous suspension>
所以,我运行了这些命令来解决这个问题。
-flutter clean -v
<块引用>-flutter channel stable **(如果这些没有解决问题,则可选)
<块引用>-flutter upgrade -v
<块引用>-flutter pub cache repair -v(免责声明:它将下载所有软件包的每个版本。请确保互联网速度非常快,或者至少花一个小时的时间。)< /p>
如果您使用代理或 VPN 连接到互联网,
确保应用程序没有通过那个解析本地主机。(DNS)
之后,在 Windows 上杀死 adb 和 dart 进程。
(我不知道如何在 Mac/Linux 中杀死这些。抱歉)
在命令提示符中运行这些命令。
taskkill /f /im dart*
taskkill /f /im adb*(您也可以运行“adb kill-server”)
导航到 %HOMEDRIVE%:\Users%USERNAME%.android"
就我而言,它是( C:\Users\Isira Adithya.android )
然后删除adbkey。
断开设备与计算机的连接。
转到设置 -> 开发者选项,
关闭 USB 调试并重新打开。
撤销 USB 调试授权。
重启设备。
我认为这些步骤应该可以解决您的问题。
另外我才 16 岁,我不是一个非常有经验的开发人员。
如果这些没有解决,请使用它来获取更多信息。 Github Issue
答案 2 :(得分:2)
对于我来说,当我错误地使用了诸如facebook_login,twitter_login之类的第三方时,我遇到了错误。
要检查:
要解决:
希望获得帮助。
答案 3 :(得分:1)
我不知道您是否已经知道了,但这对其他人可能有用。
我也遇到了同样的问题,因此我在this video中找到了答案。总之,我不得不更改我的Android模拟器。
P.S。我主要是一名iOS开发人员,因此对Flutter和Android还是陌生的,所以我不确定这是否是最好的方法。
答案 4 :(得分:1)
对我来说,这是由flutter_facebook_login插件引起的,因此我删除了它,并且我有能力删除facebook登录选项,但是在您的情况下,您可以尝试使用不同版本的flutter_facebook_login,也可以使用其他插件登录使用Facebook。
答案 5 :(得分:0)
这也发生在我身上,问题是我在我的电脑上使用了 vpn,我关闭了 vpn,一切正常
答案 6 :(得分:0)
试试
<块引用>颤动医生 -v
我遇到了同样的问题。所以我运行 flutter doctor -v 命令。
然后我发现了错误
<块引用>✗ 不接受 Android 许可证。要解决此问题,请运行:flutter doctor --android-licenses。
flutter doctor --android-licenses 这个命令解决了我的问题。
答案 7 :(得分:0)
我遇到了同样的错误信息。就我而言,问题只是我在 Runner.xcodeproj 中更改的配置。
在 Xcode 中打开 runner.xcodeproj,转到 General 选项卡 -> App Icons and Launch Images ->“Launch Screen File”。我已将其更改为 Main 并导致错误,更改回“LaunchScreen”选项为我解决了问题。
答案 8 :(得分:0)
就我而言,我只是关闭了模拟器,然后再次运行。
答案 9 :(得分:0)
在android文件夹中添加一些代码后,我已经解决了这个问题。
1。在AndroidManifest.xml中添加以下代码
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
<activity android:name="com.facebook.FacebookActivity"
android:configChanges=
"keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name" />
<activity
android:name="com.facebook.CustomTabActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="@string/fb_login_protocol_scheme" />
</intent-filter>
</activity>
2。将您的Facebook应用ID添加到strings.xml
<string name="facebook_app_id">380000000000000</string>
<string name="fb_login_protocol_scheme">fb380000000000000</string>
3。在pubspec.yaml中添加依赖项
flutter_facebook_login: ^1.1.1
运行并获取
。答案 10 :(得分:0)
对我来说,这是由手机屏幕保护程序引起的。仿真器屏幕被锁定。后 我按下电源图标,屏幕打开。然后我再次运行它,一切正常。
答案 11 :(得分:0)
当我在AVD Manager中删除模拟器并重建它时,它就可以工作。
答案 12 :(得分:0)
答案 13 :(得分:0)
在android studio中打开项目=>启动仿真器-或-以调试模式“打开”将android设备连接=>在android studio上运行项目=>从VS代码或使用{{ 1}}
答案 14 :(得分:0)
我遇到相同的问题,然后转到“ xcode”->“窗口”->“设备和模拟器”,在“已安装的应用程序”下,我删除了一些应用程序,并且可以正常工作。
答案 15 :(得分:0)
看来这可能是不同的事情。就我而言,我删除了我正在使用的包装,barcode_scan。
答案 16 :(得分:0)
尝试
flutter运行--release
在升级flutter 1.13之后,我遇到了同样的问题,但是上面的命令有所帮助。