Description
There are some things that need to be done in Android Studio to support add-to-app. Some of these may be applicable to IntelliJ.
-
Phase 1
-
Update the new project wizard to allow language choice on the last page.
-
Propagate run mode (profile, debug) to attach command. Make sure flutter attach can work on android/ios device/simulator debug/profile without parameters flutter#32999
Completed via engine changes; PR Use Build Variants view to control Flutter build mode #4134 close w/o merging. -
Add entry-point to run configurations. Hot restart ignores the "entryPoint" parameter from FlutterArguments flutter#31490
-
Add UI affordance to support continuously re-connecting the Android app during Flutter hot reload. flutter attach stays alive flutter#32824
-
Add UI affordance to trigger Flutter build aar. Support flutter build aar flutter#26099
-
Add support for
flutter integrate
to existing Flutter module in AS. Currently it only hooks in include_flutter.groovy. Make iOS cocoapods integration easier flutter#32993 -
Launch devtools from Flutter attach button. (Are we sure we want to do this when we already have a button for it?) flutter attach should show DevTools in the resident runner and in IDEs flutter#33001
-
Integration tests for IDE extensions. Ensure coverage for flutter add-to-app tools flutter#33144
-
Phase 2
-
Investigate re-use of AS resource management to support use of Android resources by Flutter modules. How to access the asset images from the native code in flutter flutter#31501
-
Doing the inverse (access Flutter resources in Android code) would require changes to the Android Studio code base.
-
Add a custom Project Structure editor to manage all of pubspec.yaml. (Once again.)
-
Phase 3
-
Investigate possibility of adding support for Flutter modules to AS Project Structure editor (may require changing AS code base).
-
Phase 4
-
Investigate possibility of editing Flutter code as part of an Android project (requires changes to AS code base).
-
Index C++ code and support library management -- might be free if previous item is implemented.