Qt application lifecycle (startup, shutdown, sessions)

From Qt Wiki
Jump to navigation Jump to search

Notes from QtCon

General problem: Qt traditionally treats main() as the one true entry and exit point.

macOS

- Ideally not limited to startup via main()
- Let AppKit take care of exit(0), instead of returning from exec() and main()

Windows

- WinMain,

WinRT

iOS

Android

  - Multiple Activities (modal). Maps to multiple QWindows in the same process
  - Multiple Services. Callback-based, main thread
  - A single process
  Challenges:
      * Each activity will provide it's own SurfaceView and input events.
      * The backgrounded activity doesn't have a valid SurfaceView to paint 

into, any pain request that is coming from Qt might lead to crashes

      * QPA is not designed for such a thing