Flutter on Desktop
2020-03-01 539浏览
- 1.Flutter on Desktop 郭⼒力力恒 @⼴广发证券
- 2.个⼈人介绍 郭⼒力力恒 • 2015 ⼴广发证券 • 2012 腾讯 • 2011 迅雷雷 flutter webassembly 开源技术 ⾳音乐
- 3.• 开发效率 • 丰富的组件 • 性能
- 4.⼩小标题
- 5.⼩小标题
- 6.
- 7.
- 8.
- 9.
- 10.内容⼤大纲 01 Flutter桌⾯面端运⾏行行原理理 02 Flutter与底层的通信 03 实战、总结
- 11.Flutter桌⾯面端运⾏行行原理理
- 12.⼩小标题
- 13.⼩小标题 Embedder Activity View Controller …
- 14.⼩小标题
- 15.
- 16.libflutter_engine.so android, linux flutter_engine.dll windows FlutterEmbedder.framework ios, macos
- 17.
- 18.FlutterEmbedder.h
- 19.FlutterEmbedder.h
- 20.FlutterEmbedder.h
- 21.桌⾯面端flutter运⾏行行 • 打包flutter资源 • 开窗 • FlutterEngineRun(/* 窗⼝口,dart资源 */)
- 22.> flutter build bundle
- 23.> flutter build bundle
- 24.GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.
- 25.GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.
- 26.1. 打包flutter资源 2. 开窗 3. FlutterEngineRun()
- 27.事件处理理
- 28.事件处理理
- 29.
- 30.FlutterEngineSendPointerEvent
- 31.FlutterEngineSendPointerEvent MethodChannel('flutter/keyevent')
- 32.1. 打包flutter资源 2. 开窗 3. FlutterEngineRun() 4. 事件循环 5. 实现MethodChannel
- 33.⽅方法通道、事件通道
- 34.MethodChannel
- 35.MethodChannel
- 36.MethodChannel
- 37.MethodChannel
- 38.MethodChannel
- 39.MethodChannel
- 40.MethodChannel 1
- 41.MethodChannel 1 2
- 42.MethodChannel 1 2 3
- 43.MethodChannel 4 1 2 3
- 44.Rust -> Flutter
- 45.EventChannel
- 46.EventChannel
- 47.EventChannel
- 48.EventChannel
- 49.EventChannel
- 50.EventChannel invokeMethod(‘listen’)
- 51.EventChannel invokeMethod(‘listen’) invokeMethod(‘cancel’)
- 52.Flutter 主线程 ⼦子线程
- 53.async Flutter 主线程 ⼦子线程
- 54.
- 55.
- 56.
- 57.1
- 58.1 2
- 59.1 2 3
- 60.1. 打包flutter资源 2. 开窗 3. FlutterEngineRun() 4. 事件处理 5. 实现MethodChannel 6. 实现EventChannel 7. 热加载 8. 菜单,对话框 9. 安装包构建
- 61.实战
- 62.
- 63.
- 64.初始化项⽬目
- 65.Widgets ➢ Lisener ⿏鼠标事件 ➢ RawKeyboardListener 键盘事件 ➢ ListView, GridView, ScrollView ➢ Tooltip ➢ PopupMenu
- 66.Listener PointerDownEvent .buttons PointerSignalEvent .scrollDelta
- 67.Listener PointerDownEvent .buttons PointerSignalEvent .scrollDelta
- 68.RawKeyboardListener RawKeyboardListener监听键盘事件
- 69.ListView, GridView, ScrollView Scrollable
- 70.Tooltip组件
- 71.Tooltip组件
- 72.PopupMenu
- 73.总结
- 74.桌⾯面跨端⽅方案对⽐比
- 75.桌⾯面跨端⽅方案对⽐比 优点:开发效率,成熟 缺点:性能,太⼤大了了
- 76.桌⾯面跨端⽅方案对⽐比 优点:开发效率,成熟 缺点:性能,太⼤大了了 优点:性能,成熟 缺点:开发效率,证书
- 77.桌⾯面跨端⽅方案对⽐比 优点:开发效率,成熟 缺点:性能,太⼤大了了 优点:开发效率,性能,轻量量 缺点:成熟度⽋欠缺 优点:性能,成熟 缺点:开发效率,证书
- 78.桌⾯面跨端⽅方案对⽐比 优点:开发效率,成熟 缺点:性能,太⼤大了了 优点:开发效率,性能,轻量量 缺点:成熟度⽋欠缺 优点:性能,成熟 缺点:开发效率,证书 可玩性!
- 79.Thank you!