我刚刚将flutter
升级到最新版本,flutter doctor -v
没有错误。从Android Studio
安装apk时,日志输出的错误部分看起来像这样:
Running Gradle task 'assembleDebug'...
✓ Built build/app/outputs/apk/debug/app-debug.apk.
E/flutter (24489): [ERROR:flutter/shell/common/shell.cc(197)] Dart Error: Can't load Kernel binary: Invalid kernel binary: Indicated size is invalid.
E/flutter (24489): [ERROR:flutter/shell/common/engine.cc(198)] Could not prepare to run the isolate.
E/flutter (24489): [ERROR:flutter/shell/common/engine.cc(137)] Engine not prepare and launch isolate.
E/flutter (24489): [ERROR:flutter/shell/common/shell.cc(433)] Could not launch engine with configuration.
I/zygote64(24489): Do full code cache collection,code=124KB,data=87KB
I/zygote64(24489): After code cache collection,code=116KB,data=66KB
我尝试删除GitHub issue page建议的flutter
bin/cache
,然后再次删除flutter doctor
,但这不能解决Dart Error:Invalid kernel binary: Indicated size is invalid
问题。
我的flutter channel
位于master
中,不是 stable
。
顺便说一句,does always
发生了,当第一次尝试运行失败时,第二次尝试运行可以绕过这些错误,只是无法弄清原因。
首次编辑
Dart Error: Can't load Kernel binary: Invalid kernel binary: Indicated size is invalid
上的信息很少。kernel format
上不是问题,但kernel size
上却有问题,是否有地方可以调整Flutter Dart引擎的配置?>
第二次修改
这是我的
pubspec.yaml
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
intl: ^0.15.7
provider: ^3.1.0
shrine_images: ^1.0.0
url_launcher: 5.1.0
path_provider: ^1.2.0
barcode_scan: ^1.0.0
qr_flutter: ^1.1.1
font_awesome_flutter: ^8.5.0
flutter_circular_slider: ^2.5.0
flutter_swiper: ^1.1.6
after_layout: ^1.0.7+2
wave:
crypto: ^2.1.2
rxdart: ^0.22.2
bloc: ^0.15.0
flutter_bloc: ^0.21.0
equatable: ^0.2.0
json_serializable: ^3.2.2
shared_preferences: ^0.5.3+4
flutter_slidable: ^0.5.4
fluttertoast: ^3.1.3
encrypt: ^3.3.1
connectivity: ^0.4.4
animator: ^1.0.0+1
imei_plugin: ^1.1.4
photo_view: ^0.7.0
dev_dependencies:
flutter_test:
sdk: flutter
pedantic: ^1.4.0
build_runner: ^1.6.9
当我在 Run
界面中按两次Android Studio
按钮以绕过我上面提到的错误时,可以安装apk 当我将apk分发给其他人时,它无法正常工作,它只会弹出白色屏幕,而没有其他任何显示。
第三次修改
我还对此GitHub Issue进行了讨论。
第四次编辑
我创建了一个最小的project,以便在此处重现问题(目前仅涉及android platform
),并且还打开了一个新的issue。
第五次修改
在我引用第三方图书馆时,该图书馆与Firebase Cloud Messaging
不同,以提供后台推送通知服务。
我想Dart Error: Can't load Kernel binary: Invalid kernel binary: Indicated size is invalid.
是由该服务引起的。在我注释启动该行的行中,没有显示错误。再现此问题的最低project也已相应更新。