Results 9 issues of 林军华

引擎初始化后短时间内,FlutterView多次attach、detach、attach引擎会导致无法渲染而白屏但可以相应触摸事件 具体的复现代码顺序如下: FlutterBoostFragment是CachedEngineFragmentBuilder方法创建的对象 ```kotlin FlutterBoostFragment ---->init(这初始化Flutter引擎) ---->onCreateView ---->---->FlutterActivityAndFragmentDelegate.onCreateView(这里调用了FlutterView的attachFromFlutterEngine) ---->-->这里调用了FlutterView的detachFromFlutterEngine触发 ---->didFragmentShow(这里调用了FlutterView的attachFromFlutterEngine触发) ``` Flutter v2.5.3 FlutterBoost v3.0-null-safety-preview.18 源码截图:

枚举实现单例模式 误写成class了 应该改为enum

【问题描述】 ffi加载图片的方式存在内存拷贝,一般正式环境下还是使用texture,不想在正式环境的app包内打入libpowerimage.so动态库 ffi现在仅用于解决iOS在模拟器上无法显示texture时使用,使用场景有限 【建议方案】 独立ffi图片加载方式,可以单独引入依赖包

本来想引入该库的,代码分析,技术评估,搞了好久……最后被一个彩蛋否决了!!!一次彩蛋,后面可能会有更多彩蛋,无法信任这种操作!!!代码要远离彩蛋,且行且珍惜!!!

bug

用于区分这两种情况:a.用户拖动触发刷新,b.autoRefresh等方法触发刷新。目的在于实现不同的刷新效果。https://github.com/scwang90/SmartRefreshLayout/issues/72#issuecomment-562411978

希望添加atlas和RePlugin的对比到现有的对比列表中

### 请描述遇到的问题,以及您所期望的正确的结果 高版本Flutter SDK(3.19.5)中,AppLifecycleState.resumed的index变成1了,AppLifecycleState.resumed的index变成4了,而FlutterBoost中判断生命周期的接收数值还是0和2。最终导致匹配不了目标生命周期。 https://github.com/flutter/flutter/blob/master/engine/src/flutter/lib/ui/platform_dispatcher.dart https://github.com/alibaba/flutter_boost/blob/main/lib/src/flutter_boost_app.dart ### 请说明如何操作会遇到上述问题 升级FlutterSDK版本到3.19.5 ### 在下面填入关键复现代码 https://github.com/flutter/flutter/blob/master/engine/src/flutter/lib/ui/platform_dispatcher.dart https://github.com/alibaba/flutter_boost/blob/main/lib/src/flutter_boost_app.dart ### 复现的平台 Both ### Flutter SDK版本 3.19.5 ### FlutterBoost版本 4.6.5 ### 是否延迟初始化FlutterBoost No ### 解决方案 修改FLutterBoost中_addAppLifecycleStateEventListener方法里的生命周期枚举判断条件

![image](https://user-images.githubusercontent.com/20511081/92877271-9187cd00-f43d-11ea-85eb-47689ab3aef1.png) 该方法导致requestDisallowInterceptTouchEvent方法不能继续传递到上传父控件,导致依赖requestDisallowInterceptTouchEvent处理的滑动冲突失效。 例如: ` ` WebView中有部分需要水平滑动的情况,在触摸水平滑动区域时候调用requestDisallowInterceptTouchEvent来获取滑动事件,requestDisallowInterceptTouchEvent标记位传递到SmartRefreshLayout被中断,未能传递到ViewPager中,导致WebView的水平滑动事件还是会被ViewPager拦截。 上述判断中:ViewCompat.isNestedScrollingEnabled(target)为false则无法传递到父控件 官方注释中注明需要传递给父控件。 ![image](https://user-images.githubusercontent.com/20511081/92878264-88e3c680-f43e-11ea-8be2-0eb3fb9ee962.png)