groups:
  - id: event.device.app.lifecycle
    stability: development
    type: event
    name: device.app.lifecycle
    brief: >
      This event represents an occurrence of a lifecycle transition on Android or iOS platform.
    note: >
      The event body fields MUST be used to describe the state of the application
      at the time of the event.

      This event is meant to be used in conjunction with `os.name`
      [resource semantic convention](/docs/resource/os.md) to identify the
      mobile operating system (e.g. Android, iOS).

      The `android.app.state` and `ios.app.state` fields are mutually
      exclusive and MUST NOT be used together, each field MUST be
      used with its corresponding `os.name` value.
    attributes:
      - ref: ios.app.state
        requirement_level:
          conditionally_required: if and only if `os.name` is `ios`
      - ref: android.app.state
        requirement_level:
          conditionally_required: if and only if `os.name` is `android`
