===================== Create Flutter Plugin ===================== * https://flutter.dev/docs/development/platform-integration/platform-channels#codec From flutter.dev: **"some specific steps are needed to ensure a smooth experience"** SOURCE CODE =========== Plugin Implementation --------------------- Init Project ------------ Generate Project: :: # generate flutter plugin project $ flutter create --org io.malloc.ccc --template=plugin ccipherchain # generate with kotlin and swift support $ flutter create --org io.malloc.ccc --template=plugin -i swift -a kotline ccipherchain DART plugin code is in: ccc_fplugin/lib/ccc_fplugin.dart JAVA plugin code is in: android/ iOS plugin code is in: ios/ EXAMPLE code is in: ccc_fplugin/example/lib/main.dart $ cd ccc_fplugin/example $ flutter run Open Android Java Project to edit: * **OPEN: ./example/android/build.gradle file in Android Studio** * to edit platform code in an IDE see https://flutter.io/developing-packages/#edit-plugin-package. Notes ===== WEB Info -------- * FLUTTER - https://flutter.dev/docs/development/packages-and-plugins/developing-packages * Good Example - https://medium.com/flutter-io/writing-a-good-flutter-plugin-1a561b986c9c * How to Open Android Source Code Plugin Lib Inside Flutter Project - https://github.com/flutter/flutter/issues/19830 ISSUES ====== edit ./android && ./example/android ----------------------------------- **OPEN: ./example/android/build.gradle file in Android Studio** the gradle file there also includes the flutter plugin project, which will also cascade to include the android project, etc...VERY convoluted!! BASTARDS!! * Flutter Trouble Tickets - https://github.com/flutter/flutter/issues/19830 - https://github.com/flutter/flutter/issues/11632 - https://github.com/flutter/flutter/issues/9698 * --or-- add flutter.jar to the project - j3g/apps/flutter/bin/cache/artifacts/engine/android-x64/flutter.jar MISC ==== :: Host platform code is in the "android" and "ios" directories under ccc_fplugin. To edit platform code in an IDE see https://flutter.io/developing-packages/#edit-plugin-package. ISSUE --> android: https://flutter.dev/docs/development/packages-and-plugins/developing-packages#step-2b-add-android-platform-code-javakt ios: https://flutter.dev/docs/development/packages-and-plugins/developing-packages#step-2c-add-ios-platform-code-hmswift