flutter sur desktop
play

Flutter sur desktop Going beyond mobile 1 Qui suis-je ? Pierre - PowerPoint PPT Presentation

Flutter sur desktop Going beyond mobile 1 Qui suis-je ? Pierre Champion @Drakirus tudiant : IA applique au Langage Naturel (NLP) Universit du Mans Background Mobile : Cordova Plugins Android Flutter :


  1. Flutter sur desktop Going beyond mobile 1

  2. Qui suis-je ? Pierre Champion @Drakirus Étudiant : IA appliquée au Langage Naturel (NLP) Université du Mans Background Mobile : Cordova Plugins Android Flutter : Drakirus/go-flutter-desktop-embedder 2

  3. Petit Rappel 3

  4. Nouveaux canaux de distribution Flutter for : Android ● ● iOS Linux ● ● Windows OSx ● Exemple d'une application Flutter sur Linux 4

  5. Alternative viable à Electron ? 5

  6. Bénéfique pour le dev mobile Émulateur : Client Flutter Desktop : ● Démarrage lent ● Démarrage rapide ● Fixé à une résolution ● Runtime Redimensionnable RAM ~1 Go RAM ~100 Mo ● ● App size ~700 Mo App size ~20 Mo ● ● Side Note: Development of Cordova plugins is a real pain. 6

  7. Architecture API Developer Shells for : ● Android ● iOS Low level API Embedder API Engine as a library Engine + Embedder = Shell 7

  8. Let's build an simple Embedder ! 8

  9. Compilation Flutter Flutter uses Kernel Snapshot in the development stage. 4 files: isolate_snapshot_data ▪ vm_snapshot_data ▪ platform.dill ▪ kernel_blob.bin 9

  10. Compilation Flutter 10

  11. Flutter desktop requirements ● Target Platform Override 11

  12. Flutter desktop requirements ● Fonts 12

  13. Flutter desktop requirements ● Platform Plugins 13

  14. Flutter application limitations ● Dart VM Exceptions ● Hovering / Cursor Changes / Scroll Wheel 14

  15. stateful hot reload ?! Terminal - ✔ VS Code - ✔ IntelliJ - TBD 15

  16. Prebuild Embedders google/flutter-desktop- Drakirus/go-flutter-desk gliheng/flutter-rs embedding top-embedder Windows / Linux / Mac Windows / Linux / Mac Linux / Mac 1ans 6 mois 3 mois Plugins - ✔ Plugins - ✔ ✗ Plugins - ✔ @stuartmorgan @Drakirus @gliheng @franciscojma86 @GeertJohan 'PoolEvent' 16

  17. go embedder example 17

  18. go embedder example 18

  19. More to come ● Texture API AOT ● Desktop look and feel ● ● OSx Shell 19

  20. Sources ● https://github.com/flutter/flutter/wiki/The-Engine-architecture ● https://github.com/google/flutter-desktop-embedding ● https://github.com/Drakirus/go-flutter-desktop-embedder ● https://github.com/gliheng/flutter-rs ● https://hackernoon.com/making-the-most-of-flutter-from-basics-to-customization-433171581d01 ● https://proandroiddev.com/flutters-compilation-patterns-24e139d14177 ● https://softwareengineeringdaily.com/2018/10/08/an-overview-of-flutter/ ● https://steveperkins.com/using-java-9-modularization-to-ship-zero-dependency-native-apps/ ● https://proandroiddev.com/flutters-compilation-patterns-24e139d14177 Questions ? 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend