flutter_boost
flutter_boost copied to clipboard
[FlutterBoostPlugin sendEventToNative:error:] 的崩溃
Steps to Reproduce
A small application to reproduce the bug(最小化可复现的demo)
无法稳定复现,不过bugly上的崩溃日志记录如下,数量不少。 想问一下,这个问题是否已经修复,如果修复了我应该升级到哪个版本。
Flutter Boost Version flutter_boost: git: url: 'https://github.com/alibaba/flutter_boost.git' ref: 'v3.0-preview.9'
Target Platform: iOS
Target OS version/browser: 14.3 (18C66) 不止这一种系统版本
Devices: iPhone 7 不止这一种机型
Logs
` #0 Thread
0 libsystem_kernel.dylib ___pthread_kill + 8 1 libsystem_pthread.dylib _pthread_kill + 212 2 libsystem_c.dylib _abort + 100 3 libsystem_c.dylib _err 4 flutter_boost -[FlutterBoostPlugin sendEventToNative:error:].cold.1 + 0 5 flutter_boost -[FBFlutterContainerManager removeContainerByUniqueId:] + 0 6 flutter_boost -[FlutterBoostPlugin containerWillAppear:] + 456 7 flutter_boost -[FBFlutterViewContainer viewWillAppear:] + 144 8 Queen -[FBFlutterViewContainer(SQTools) sqfbvc_viewWillAppear:] (FBFlutterViewContainer+SQTools.m:91) 9 UIKitCore -[UIViewController _setViewAppearState:isAnimating:] + 604 10 UIKitCore -[UIViewController __viewWillAppear:] + 116 11 UIKitCore -[UINavigationController _startCustomTransition:] + 1344 12 UIKitCore -[UINavigationController _startDeferredTransitionIfNeeded:] + 700 13 UIKitCore -[UINavigationController __viewWillLayoutSubviews] + 164 14 UIKitCore -[UILayoutContainerView layoutSubviews] + 224 15 UIKitCore -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2468 16 QuartzCore -[CALayer layoutSublayers] + 288 17 QuartzCore CA::Layer::layout_if_needed(CA::Transaction*) + 520 18 QuartzCore CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 140 19 QuartzCore CA::Context::commit_transaction(CA::Transaction*, double, double*) + 416 20 QuartzCore CA::Transaction::commit() + 728 21 QuartzCore CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 92 22 CoreFoundation _CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 32 23 CoreFoundation ___CFRunLoopDoObservers + 604 24 CoreFoundation ___CFRunLoopRun + 960 25 CoreFoundation _CFRunLoopRunSpecific + 572 26 GraphicsServices _GSEventRunModal + 160 27 UIKitCore -[UIApplication _run] + 1052 28 UIKitCore _UIApplicationMain + 164 29 0MATweakEx.dylib vndsuohau79173918g01gj410jvgdsohju1::bvdsiabovuiw7hr9g891y7419740932848g(int, char**, NSString*, NSString*) + 732 30 Queen main (main.m:15) 31 libdyld.dylib _start + 4 `
[✓] Flutter (Channel stable, 2.2.3, on macOS 11.4 20F71 darwin-x64, locale zh-Hans-CN) • Flutter version 2.2.3 at /Users/chenglei/Desktop/FlutterDev/flutter • Framework revision f4abaa0735 (3 months ago), 2021-07-01 12:46:11 -0700 • Engine revision 241c87ad80 • Dart version 2.13.4 • Pub download mirror https://pub.flutter-io.cn • Flutter download mirror https://storage.flutter-io.cn
15.0 (19A344) iPhone Xs Max 我也遇到了同样的崩溃 @ETListener ,请问你解决了吗?
15.0 (19A344) iPhone Xs Max 我也遇到了同样的崩溃@ETListener,请问你解决了吗?
暂时没有解决;应该是FlutterBoost的问题 我这边查了一下,应该和iOS系统版本和手机机型无关。 我这边打算后续升级一下Flutter 和 FlutterBoost 的版本试试
还没有解决
------------------ 原始邮件 ------------------ 发件人: "alibaba/flutter_boost" @.>; 发送时间: 2021年11月15日(星期一) 上午10:41 @.>; @.@.>; 主题: Re: [alibaba/flutter_boost] [FlutterBoostPlugin sendEventToNative:error:] 的崩溃 (#1379)
15.0 (19A344) iPhone Xs Max @.***,请问你解决了吗?
暂时没有解决;应该是FlutterBoost的问题 我这边查了一下,应该和iOS系统版本和手机机型无关。 我这边打算后续升级一下Flutter 和 FlutterBoost 的版本试试
你好,我们也遇到了一样的问题,请问有解决方案了吗,现在线上影响的设备太多了
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.
@ETListener 我现在用的是最新的版本v3.0-null-safety-preview.16也遇到了这个问题 请问一下 这个问题解决了吗?
@noborder @0xZOne 这个问题能关注一下吗
15.0 (19A344) iPhone Xs Max 我也遇到了同样的崩溃@ETListener,请问你解决了吗?
暂时没有解决;应该是FlutterBoost的问题 我这边查了一下,应该和iOS系统版本和手机机型无关。 我这边打算后续升级一下Flutter 和 FlutterBoost 的版本试试
请问有稳定复现场景么,我用到preview13版本 flutter2.2.3 和你差不多。 刚上线一天就有一个崩溃了
Steps to Reproduce
A small application to reproduce the bug(最小化可复现的demo)
无法稳定复现,不过bugly上的崩溃日志记录如下,数量不少。 想问一下,这个问题是否已经修复,如果修复了我应该升级到哪个版本。
Flutter Boost Version flutter_boost: git: url: 'https://github.com/alibaba/flutter_boost.git' ref: 'v3.0-preview.9'
Target Platform: iOS
Target OS version/browser: 14.3 (18C66) 不止这一种系统版本
Devices: iPhone 7 不止这一种机型
Logs
` #0 Thread
0 libsystem_kernel.dylib ___pthread_kill + 8 1 libsystem_pthread.dylib _pthread_kill + 212 2 libsystem_c.dylib _abort + 100 3 libsystem_c.dylib _err 4 flutter_boost -[FlutterBoostPlugin sendEventToNative:error:].cold.1 + 0 5 flutter_boost -[FBFlutterContainerManager removeContainerByUniqueId:] + 0 6 flutter_boost -[FlutterBoostPlugin containerWillAppear:] + 456 7 flutter_boost -[FBFlutterViewContainer viewWillAppear:] + 144 8 Queen -[FBFlutterViewContainer(SQTools) sqfbvc_viewWillAppear:] (FBFlutterViewContainer+SQTools.m:91) 9 UIKitCore -[UIViewController _setViewAppearState:isAnimating:] + 604 10 UIKitCore -[UIViewController __viewWillAppear:] + 116 11 UIKitCore -[UINavigationController _startCustomTransition:] + 1344 12 UIKitCore -[UINavigationController _startDeferredTransitionIfNeeded:] + 700 13 UIKitCore -[UINavigationController __viewWillLayoutSubviews] + 164 14 UIKitCore -[UILayoutContainerView layoutSubviews] + 224 15 UIKitCore -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2468 16 QuartzCore -[CALayer layoutSublayers] + 288 17 QuartzCore CA::Layer::layout_if_needed(CA::Transaction*) + 520 18 QuartzCore CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 140 19 QuartzCore CA::Context::commit_transaction(CA::Transaction*, double, double*) + 416 20 QuartzCore CA::Transaction::commit() + 728 21 QuartzCore CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 92 22 CoreFoundation _CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 32 23 CoreFoundation ___CFRunLoopDoObservers + 604 24 CoreFoundation ___CFRunLoopRun + 960 25 CoreFoundation _CFRunLoopRunSpecific + 572 26 GraphicsServices _GSEventRunModal + 160 27 UIKitCore -[UIApplication _run] + 1052 28 UIKitCore _UIApplicationMain + 164 29 0MATweakEx.dylib vndsuohau79173918g01gj410jvgdsohju1::bvdsiabovuiw7hr9g891y7419740932848g(int, char**, NSString*, NSString*) + 732 30 Queen main (main.m:15) 31 libdyld.dylib _start + 4 `
[✓] Flutter (Channel stable, 2.2.3, on macOS 11.4 20F71 darwin-x64, locale zh-Hans-CN) • Flutter version 2.2.3 at /Users/chenglei/Desktop/FlutterDev/flutter • Framework revision f4abaa0735 (3 months ago), 2021-07-01 12:46:11 -0700 • Engine revision 241c87ad80 • Dart version 2.13.4 • Pub download mirror https://pub.flutter-io.cn • Flutter download mirror https://storage.flutter-io.cn
请问有复现demo么 我想尝试自己解决这个问题 我的项目也有同样的报错 但是不好复现
这是解决了?
算是解决了,一个内存泄露的问题 非常复杂。 我这里是特殊处理了。 大概是一些非正常的dealloc时候 不会触发didMoveToParentViewController导致engine没有detach 就会有问题。 我是在一些特殊场景 强制detach了。
👍
算是解决了,一个内存泄露的问题 非常复杂。 我这里是特殊处理了。 大概是一些非正常的dealloc时候 不会触发didMoveToParentViewController导致engine没有detach 就会有问题。 我是在一些特殊场景 强制detach了。
算是解决了,一个内存泄露的问题 非常复杂。 我这里是特殊处理了。 大概是一些非正常的dealloc时候 不会触发didMoveToParentViewController导致engine没有detach 就会有问题。 我是在一些特殊场景 强制detach了。
@JerryFans 大佬,请问具体是如何解决哈,有文章之类吗
算是解决了,一个内存泄露的问题 非常复杂。 我这里是特殊处理了。 大概是一些非正常的dealloc时候 不会触发didMoveToParentViewController导致engine没有detach 就会有问题。 我是在一些特殊场景 强制detach了。
@JerryFans 大佬,请问具体是如何解决哈,有文章之类吗
你看源码就会发现只有在didMoveToParent(大概是对应popViewController的场景) 和 dismissController会出发detachFlutter。但是如果你们项目中有特殊的case不能触发到这些场景导致无法正常detach就会有这种crash。(比如你切换登陆整个rootVC都不见了,你整个vc栈要干掉。实际都不会触发上面的方法,就会crash。 我的做法是自己补充这些场景手动detachFlutter。但要注意不要过度detach。做个变量控制只detach一次就好了。
老哥们,这个问题有啥好的解决办法吗?我这是把boost升级到4.0.4之后出现的问题,用的flutter版本是3.7.12
_cxa_throw + 6704335372284639784 -[FBFlutterContainerManager removeContainerByUniqueId:] (FBFlutterContainerManager.m:60-61) -[FlutterBoostPlugin containerWillAppear:] (FlutterBoostPlugin.m:0) -[FBFlutterViewContainer viewWillAppear:] (FBFlutterViewContainer.m:272) -[UIViewController _setViewAppearState:isAnimating:] + 664