The application model provides functionality to acquire, install, invoke, manage, and update apps.
Application Model: Overview
Describes the platform’s app model, kinds of apps, app packaging, app trust and revocation, app isolation, capabilities and privileges, app states and lifetime management, and app health and servicing.
App Types
The Xbox One development kit supports exclusive apps and shared apps and reserves some resources for the core operating system.
Cross-OS Calls
Cross-OS calls are API methods (or properties) executing in the exclusive partition, and need to communicate with lower level services in the system OS, in order to retrieve data back into the exclusive partition.
App Packaging
An app is a package of executable code and other resources.
App Trust and Revocation
Every app certified by Microsoft for use on the Xbox One console will be distributed in encrypted form, using keys controlled by Microsoft, so that tampering can be detected.
App Isolation, Capabilities, and Privileges
Apps are isolated from one another and from the system, and specify whether they are able to access specific user-sensitive system resources and specific privileged functionality.
App States
Xbox One supports fast switching between apps and the system’s user interface, and thus, Xbox One implements lifetime management of a process.
App View States and Focus
A feature of Xbox One is that the display area can be shared by different applications. Xbox One runs only one exclusive app at a time, but it can run multiple shared apps in parallel with the title. In all scenarios, the user can see a maximum of two apps on the screen but can interact with only one of them at a time. There are two concepts related to this model, the application window view state and focus state.
App Health and Servicing
The app model includes facilities to capture and publish statistics and events that occur while an app is running.
Title Activation Time Limits
Describes the activation time limits an application must meet to ensure the system doesn’t terminate it.
The package manifest is an XML document that contains the information the system needs to deploy, display, or update an Xbox One app. This information includes package identity, package dependencies, required capabilities, visual elements, and extensibility points. Every app package must include one package manifest.
Localizing Application Manifest Resources
The resources (strings and images) used in the package manifest can be localized according to the user’s locale. Your title’s resources.pri file can be updated to include strings and images for different languages so that the name, splash screens, and logos are in different languages based on the user locale.
Passing Arguments to an App or Game
Arguments can be passed to Xbox One titles at launch time using the xbapp launch command or as part of the URI used in protocol activation.