Apps/Architecture: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
Line 23: Line 23:
* Conceal uninteresting platform dependencies while providing access to crucial platform-specific features
* Conceal uninteresting platform dependencies while providing access to crucial platform-specific features
* Provide access to multiple payment providers through a single, unified API
* Provide access to multiple payment providers through a single, unified API
== Architectural Topics ==
=== App Definition ===
An App is described by its Manifest. The manifest contains user-facing metadata, including descriptions and icons. The manifest also enumerates the protected API's to which the App requests access. This information is used by the App Security Model to control access to privileged API's at run time.
=== App Management ===
The <tt>navigator.mozApps</tt> API includes several distinct sets of functionality:
* an installation API to allow Marketplaces to install packaged and web-hosted Apps
* a runtime API to allow running Apps access to their install metadata (i. e., their own App receipts)
* a management API to allow Cloud-based services or management Apps access to the set of Apps installed on the current device
=== Identity ===
* Many services in the Apps ecosystem require user authentication (e.g., the Marketplace itself, many of the Apps, the Cloud-based services). We can offer our users a much better overall experience if we (1) build a coherent Identity solution into all our services and (2) encourage App developers to do the same.
=== Payment ===
* We will offer our developers (1) a centralized way to price and manage paid Apps, including integration with multiple billing providers, as needed; (2) a unified Javascipt DOM API to facilitate In-app payments from Users for digital goods within Apps.
* We will offer users (1) a unified, trustworthy experience of purchasing and seeking refunds for paid Apps; (2) a consistent, trustworthy experience of making In-App payments
=== Cloud Services ===
* We will offer users a centralized way to backup and manage their Apps (1) across all the App Stores they patronize and (2) across all their devices. We will achieve this using a Cloud-based service distinct from our Marketplace that will be integrated with our Web Runtime such that any App installation can be captured by the service if the user opts in.
=== Marketplace ===
* We will develop and operate a vibrant, open source Marketplace for Apps. Participating developers will receive timely and transparent review of Apps they submit; participating users will discover relevant Apps and install them quickly and easily. The Marketplace will operate equally well on laptops, tablets, and smartphones.


== Deliverables ==
== Deliverables ==
Confirmed users
514

edits

Navigation menu