ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Flutter OHOS 应用上架与启动闪退场景案例

Flutter OHOS 应用上架与启动闪退场景案例 一、应用发布邀请测试或正式上架启动闪退问题场景分析故障现场描述项目应用本地启动运行正常无误发布邀请测试或正式上架启动闪退。报错堆栈信息Device info:HUAWEI Mate60Build info:BRA-AL005.0.0.150(SP8C00E150R4P30) Fingerprint:9e0ffabdb981862b88d947a5956da3ca583c6a76a88b191ffb4d3ced7e9d7b78 Module name:com.example.flutter Version:1.0.1VersionCode:1000001PreInstalled:No Foreground:Yes Timestamp:2025-07-1111:14:20.185Pid:4358Uid:20020018Process name:com.example.flutter Process life time:11s Reason:Signal:SIGABRT(SI_TKILL)0x01317b3200001106from:4358:20020018LastFatalMessage:../../third_party/dart/runtime/vm/virtual_memory_posix.cc:74: error: mmap failed:22(Invalid argument) Fault thread info: Tid:4358, Name:ths.wifi_camera #00pc0000000000199e5c/system/lib/ld-musl-aarch64.so.1(raise228)(c66b0063d30004b77342b1dde06f68b1) #01pc0000000000146f8c/system/lib/ld-musl-aarch64.so.1(abort20)(c66b0063d30004b77342b1dde06f68b1) #02pc0000000003d1271c/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #03pc0000000003f0c98c/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #04pc0000000003f0c7e8/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #05pc0000000003f29038/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #06pc0000000003f29cd0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #07pc0000000003f2a418/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #08pc0000000003f2129c/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #09pc0000000003e002a0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #10pc0000000003e2e1a8/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #11pc0000000003e2e4b0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #12pc0000000003eece5c/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #13pc0000000003eecc28/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #14pc0000000003d98974/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #15pc0000000003d98bc0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #16pc0000000003c915a0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #17pc0000000003c8cba4/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #18pc0000000003c8c0c0/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #19pc0000000003c92154/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #20pc0000000003ab02fc/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #21pc0000000003ab042c/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #22pc0000000002174c70/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #23pc000000000211f640/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #24pc0000000002113074/data/storage/el1/bundle/libs/arm64/libflutter.so(fedfd138e5142725b25cd00c996876ca4c0ef7c6) #25pc000000000003e9e4/system/lib64/platformsdk/libace_napi.z.so(panda::JSValueRef ArkNativeFunctionCallBacktrue(panda::JsiRuntimeCallInfo*)212)(85e70f1f5cf0e81468ec141fc2f4922c) #26pc0000000000404b2c/system/lib64/module/arkcompiler/stub.an(RTStub_PushCallArgsAndDispatchNative40) #27at attachToNative (entry|ohos/flutter_ohos|1.0.0-e7a98130f5|src/main/ets/embedding/engine/FlutterNapi.ts:87:1) #28at attachToNapi (entry|ohos/flutter_ohos|1.0.0-e7a98130f5|src/main/ets/embedding/engine/FlutterEngine.ts:119:1) #29at init (entry|ohos/flutter_ohos|1.0.0-e7a98130f5|src/main/ets/embedding/engine/FlutterEngine.ts:109:1)问题场景分析【问题定位】从应用市场反馈的报错日志中识别出关键词SI_TKILLraise228abort20这些都是断言日志表示flutter.har是使用的debug版本正式发布的包应该使用release编译日志中不应该出现断言。关键字第27行attachToNative。存在安全方面的影响上线的release版本应用禁用了JIT能力c中申请可执行匿名内存的能力影响到了flutter应用不再支持申请有执行权限的匿名内存导致debug版本运行闪退。release包体积会比debug包体积小很多可以看下提审的app包体积。【原因分析】debug编译打包的flutter应用没有匿名内存的可执行权限导致启动闪退。解决方案发布的正式包需要使用 release 编译。编译命令flutter build hap --release。二、未使用最新flutter代码应用启动闪退问题场景分析故障现场描述使用旧版本 flutter 代码应用启动后闪退。报错堆栈信息HiLog : ... FlutterEngine : Thread :385496703040 [FATAL:flutter/runtime/dart_vm_initializer.cc(89)]Errorwhile initializing the Dart VM: Wrong full snapshot version, expected 25523e38d22932934b1f691de39b5c14 found d20albe77c3d3c41b2a5accaeelce549 FlutterEngine: FML KILL PROCESS ...问题场景分析【问题定位】出现Error while initializing the Dart VM: Wrong full snapshot version问题通过删除缓存重新编译操作后仍未解决问题应该和版本适配有关。【原因分析】未使用最新版本代码。解决方案设置环境变量export FLUTTER_STORAGE_BASE_URLhttps://flutter-ohos.obs.cn-south-1.myhuaweicloud.com删除/bin/cache目录下的缓存拉取最新代码执行flutter clean清除项目编译缓存运行flutter run -d $DEVICE(设备id) --debug。
返回列表