- dart lang 2.8+
- ios 9+
- android api 21+
Table of Content
- QuickJS Dart
Build and Run (local machine only)
build quickjs lib for ios/android/dartVM
or build android only
or bulid ios only
run dart on dart vm
if you come up with
file system relative paths not allowed in hardened programswith macos, run this
codesign --remove-signature /usr/local/bin/dart
run flutter example, android or ios
flutter doctor -vto examine the flutter env is correctly
Then you can run example app
cd example && flutter run
Why not V8/jscore, and why QuickJS
V8 is too big for small app and IOT devices. jscore is a bit old and slow for modern app.
Why not PlatformChannel/MethodChannel and why Dart:FFI
PlatformChannel/MethodChannel(s) are designed for communication, post and receive data, and use features that had been made by exisiting Android/iOS/Native modules. It's not managed by Dart/Flutter itself.
Using Dart:FFI, we get possibilities to expand the dart/flutter. We can call native function, back and forward, adding Callbacks, manage memory of functions and values.
Docs and APIs
Do it later