首页 > 解决方案 > Flutter 的 main.dart 文件在 Android Studio 中执行时卡在“将文件同步到为 x86 64 构建的设备 Android SDK ...”

问题描述

我正在 Android Studio 上尝试我的第一个颤振代码,并在模拟器上显示它。我确实得到了输出,但编译永远不会结束,这意味着我不能热重启我的代码。我正在学习的教程没有遇到这个问题。

编辑:出现了一些新错误。它开始挂在“Installing build\app\outputs\apk\app.apk”,我解决了这个问题,现在它显示了这个。它是间歇性的,跳帧和线路互换,但或多或​​少问题仍然存在。请帮助我为解决它而发疯:)

出现以下代码:

Launching lib\main.dart on Android SDK built for x86 64 in debug mode...
Running Gradle task 'assembleDebug'...
√ Built build\app\outputs\apk\debug\app-debug.apk.
Syncing files to device Android SDK built for x86 64...
I/Choreographer( 5985): Skipped 61 frames!  The application may be doing too much work on its main thread.
D/EGL_emulation( 5985): eglMakeCurrent: 0x7e7ece03e300: ver 3 0 (tinfo 0x7e7ece1a85e0)
I/OpenGLRenderer( 5985): Davey! duration=1554ms; Flags=1, IntendedVsync=1503595359014, Vsync=1504612025640, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=1504619561700, AnimationStart=1504619633200, PerformTraversalsStart=1504619653300, DrawStart=1504626010200, SyncQueued=1504626824700, SyncStart=1504630541800, IssueDrawCommandsStart=1504630721200, SwapBuffers=1504690106800, FrameCompleted=1505153649500, DequeueBufferDuration=49170000, QueueBufferDuration=2336000, 
D/EGL_emulation( 5985): eglMakeCurrent: 0x7e7ecc6fa7e0: ver 3 0 (tinfo 0x7e7ecc62baa0)
Syncing files to device Android SDK built for x86 64...

标签: androidgradleflutterdart

解决方案


好吧,在 Linux 上,这似乎是因为内核 5.5 中的一些变化。我测试了多次,我确信 - 在内核 5.4 上它可以工作,但在内核 5.5 上重构挂起并且调试也不起作用。

这很奇怪,我不知道它与内核有什么关系(重构?wtf?),我可以怀疑 filsestem 处理中的一些变化可能会导致这种情况?需要向 InteliJ 或 Flutter 创建错误报告并告诉他们新内核导致问题。

同样奇怪的是,当使用 Android Studio 在 Java/Kotlin 中进行开发时,我没有任何问题,重构和调试都可以正常工作。所以这一定和Flutter有关。

因此,在 Linux 上,现在需要将内核降级到 5.4(不知道 Mac 或 Win)。


推荐阅读