flutter/dev/integration_tests/ios_add2app_life_cycle
Alexander Aprelev 3b8f6c4020
Upgrade framework pub dependencies, roll engine with rolled dart sdk (#130163)
Manual roll is needed because incoming dart sdk requires updated version
vm_snapshot_analysis (>=0.7.4).


5ae09b8b4f...7c83ea3e85

```
7c83ea3e85 Reland "Manual roll Dart SDK from 2d98d9e27dae to 0b07debd5862 (21 revisions) (#43457)" (#43472)
9ef3e8d533 Roll Skia from 5eba922297bb to 93c92f97f5ab (2 revisions) (#43471)
```

Remove implementation of SuitePlatform from the test as well. Remove use
of fake cwd from SuitePlatform as it can't be properly faked.
2023-07-07 13:55:35 -07:00
..
flutterapp Upgrade framework pub dependencies, roll engine with rolled dart sdk (#130163) 2023-07-07 13:55:35 -07:00
ios_add2app Remove "note that" in our documentation (as per style guide) (#120842) 2023-02-17 22:27:33 +00:00
ios_add2app.xcodeproj Remove iOS version override in ios_add2appTests unit tests (#83361) 2021-05-25 11:44:03 -07:00
ios_add2app.xcworkspace reland add lifecycle enum and remove workaround (#49368) 2020-01-27 10:38:02 -08:00
ios_add2appTests Migrate ios_add2app_life_cycle to earlgrey 2 and latest iOS SDK (#80822) 2021-04-21 14:03:59 -07:00
.gitignore reland add lifecycle enum and remove workaround (#49368) 2020-01-27 10:38:02 -08:00
build_and_test.sh Migrate ios_add2app_life_cycle to earlgrey 2 and latest iOS SDK (#80822) 2021-04-21 14:03:59 -07:00
Podfile Exclude armv7 from iOS add-to-app plugins (#101943) 2022-04-14 18:24:08 -07:00
README.md ✒ Spell Check All .md Files Related to Flutter 💙 (#61564) 2020-07-22 18:23:47 -07:00

iOS Add2App Life Cycle Test

This application demonstrates some basic functionality for Add2App, along with a native iOS ViewController as a baseline and to demonstrate interaction.

The following functionality is currently implemented:

  1. A regular iOS view controller (UIViewController), similar to the default flutter create template (NativeViewController.m).
  2. A FlutterViewController subclass that takes over the full screen. Demos showing this both from a cold/fresh engine state and a warm engine state (FullScreenViewController.m).
  3. A demo of pushing a FlutterViewController on as a child view.
  4. A demo of showing both the native and the Flutter views using a platform channel to interact with each other (HybridViewController.m).
  5. A demo of showing two FlutterViewControllers simultaneously (DualViewController.m).

A few key things are tested here (IntegrationTests.m):

  1. The ability to pre-warm the engine and attach/detach a ViewController from it.
  2. The ability to use platform channels to communicate between views.
  3. The ability to simultaneously run two instances of the engine.
  4. That a FlutterViewController can be freed when no longer in use (also tested from FlutterViewControllerTests.m).
  5. That a FlutterEngine can be freed when no longer in use.