launchEvent is not triggered at the same moment on iOS and Android.
iOS is firing after setting the rootView while Android is firing before.
Consequently if you need an event for when the rootView is set (to read/write root css variables) you need this event.
[skip ci]
BREAKING CHANGES:
`Application.orientation` is no longer a function.
Migration: Remove `()` from the `Application.orientation()` call:
```diff
import { Application } from "@nativescript/core";
-console.log(Application.orientation());
+console.log(Application.orientation);
```
`Application.systemAppearance` is no longer a function.
Migration: Remove `()` from the `Application.systemAppearance()` call:
```diff
import { Application } from "@nativescript/core";
-console.log(Application.systemAppearance());
+console.log(Application.systemAppearance);
```
On android `suspend/resume` was not doing what was expected.
In particular it was called while showing dialogs. This adds new `background` and `foreground` events which will fire expectedly and consistently for ios and android.
Cleanup type symbol usage by consolidating to manage in one spot. This makes them easier to use as well by providing a single rollup of all the common type symbol's used throughout core.