Esta tradução está incompleta. Ajude atraduzir este artigo.
Um aplicativo hospedado é um aplicativo Open Web que possui todos os recursos (HTML, CSS, Javascript, manifesto do aplicativo etc.) armazenados em um servidor web. Este artigo trata de uma introdução á aplicativos hospedados e possui links para tudo o que você precisa conhecer sobre aplicativos hospedados do ponto de vista do desenvolvedor.
Um aplicativo Open Web fornece todo seu conteúdo a partir de um servidor web, da mesma forma que um web site convencional, juntamente com um manifesto do aplicativo no diretório. O manifesto do aplicativo fornece detalhes do aplicativo, tal como sua descrição, icones usados para identificar o aplicativo instalado etc. Os detalhes no manifesto do aplicativo são usados para instalar o aplicativo em dispositivos com Firefox OS, dispositivos Android e desktops. Uma vez instalado, o aplicativo carrega o conteúdo dinâmicamente a partir do servidor web, e está habilitado para acessar outros recursos nas internet, tal como um banco de dados.
De cordo com o modelo de segurança do Firefox OS, aplicativos hospedados são definicos como aplicativos web. Isso significa que eles não são habilitados a usar APIs de permissão privilegiada: para fazer uso destas APIs o aplicativo deve ser um aplicativo empacotado.
Observe: O Firefox Marketplace suporta aplicativos hospedados pagos somente para Firefox OS e aplicativos hospedados gratuitos para Firefox OS, Firefox para Android e Firefox para Desktop. Suporte para aplicativos pagos para todas as plataformas está em desenvolvimento.
Opções para hospedar seu aplicativo
Onde hospedar seus aplicativos é com você. Se você não escolheu uma solução de hospedagem, esta sessão descreve duas das mais comuns opções utilizadas que valem a pena considerar.
GitHub
Se o conteúdo do seu Open Web App é estático (HTML/CSS/Javascript, sem processamento server-side), páginas no GitHub é uma boa opção de hospedagem. Irá hospedar seu manifesto no correto formato MIME se você der a extensão .webapp
.
Soluções genéricas de hospedagem
Para um plicativo Open Web dinâmico, aqueles que requerem processamento server-side, você pode usar alguma solução genérica de hospedagem (como um servidor web que você possua ou tenha acesso a ele). Você vai precisar garantir que o seu servidor oferece os recursos corretos. Uma número de servidores oferecem serviços web que já vêm prontos para as necessidades dos aplicativos hospedados, como Heroku. Google App Engine ou Amazon App Hosting.
Note: Installable open web apps used to have a "single app per origin" security policy, but this was lifted as of Firefox 34/Firefox OS 2.1 (read this FAQ entry for more information). If you still need to support older versions, consider hosting different apps (e.g. a test and live version) at separate origins; one strategy is to create different subdomains for your apps, or you could test it using WebIDE. See the FAQs about apps manifests for more information on origins.
Testing hosted apps
To install a hosted app into a Firefox OS Simulator or onto a device for testing purposes, see Using the App Manager. Alternatively, you can install it on to a device from a Web server by following the steps described in Publishing apps yourself.
Publishing hosted apps
You have two options for publishing hosted apps: on Firefox Marketplace or self-publishing.
Publishing on Firefox Marketplace
The process for submitting a hosted app to Firefox Marketplace is described in the App Publishing section.
When you submit your hosted app, the Marketplace generates a new manifest called the mini-manifest that is based on the app manifest on your hosted app's Web server. When a user installs your app, the mini-manifest is passed to the Apps.install()
function to install the app. The mini-manifest exists for installation and update purposes and isn't used when your app runs.
Publishing yourself
It's possible to publish hosted apps outside Firefox Marketplace, on your own web server. Details are provided in Publishing apps yourself.
Updating hosted apps
Updating of hosted apps happens in two ways:
- changes made on the app's Web server are presented to users the next time they run the app.
- changes to device content controlled by the mini-manifest, such as the app's icon or name, are updated when a new version of the app is submitted to Firefox Marketplace.
For information on updating apps in Firefox Marketplace, see Updating apps. For self-published apps see Publishing apps yourself.