Plataforma que executa aplicativos ricos da web diretamente no computador, com desempenho aprimorado
Plataforma que executa aplicativos ricos da web diretamente no computador, com desempenho aprimorado
Prós
- Multiplataforma, com foco em apps de desktop e mobile feitos para o runtime
- Suporte a ActionScript e integração com fluxos ligados ao Adobe Animate e ao Apache Flex
- Acesso ampliado a arquivos e recursos locais em comparação com apps que rodam apenas no navegador
- Possibilidade de usar extensões nativas para alcançar recursos específicos de cada sistema
Contras
- Não dá acesso direto aos componentes nativos de interface como um framework nativo
- O app precisa ser desenvolvido para AIR para aproveitar os recursos da plataforma
- Conteúdo JavaScript em visualizações web pode ter limitações de segurança
Adobe AIR é um ambiente de execução multiplataforma voltado a aplicações de internet rica que rodam como programas de desktop, sem depender do navegador. Hoje, ele é mantido pela Harman International, com apoio da Adobe, e segue como base para softwares que foram construídos especificamente para essa plataforma.
Para quem é: desenvolvedores que mantêm ou distribuem aplicativos feitos em AIR e pessoas que precisam executar, no Windows, um app que exige esse runtime.
Uma camada de execução para apps fora do navegador
No Windows, o AIR funciona como o “motor” que permite que aplicativos criados para a plataforma sejam usados como um programa instalado, com comportamento semelhante ao de um app nativo para o usuário final. A proposta é pegar experiências feitas com tecnologias da web e do ecossistema Adobe e levá-las para um executável de desktop.
Tecnologias suportadas e herança do Flash
O AIR se conecta diretamente ao universo de criação com Adobe Animate e ao desenvolvimento em ActionScript, com possibilidade de uso do Apache Flex. Internamente, ele compartilha uma base com o mecanismo de renderização do Flash Player e também pode executar conteúdo web por meio de um motor baseado em WebKit, o que ajuda a acomodar aplicações que misturam interfaces e componentes típicos da web.
Integração com arquivos e dados locais
Um dos diferenciais do AIR frente a uma aplicação que roda apenas no navegador é o acesso mais amplo ao ambiente local. Em aplicações feitas para AIR, isso pode incluir integração com o sistema de arquivos e recursos para lidar com dados localmente, como suporte embutido a SQLite e armazenamento local criptografado. Dependendo do projeto, também entram recursos do dispositivo e integrações de desktop, como multitouch, GPS e integração com a barra de tarefas.
Extensões nativas para recursos específicos
Quando as APIs padrão não cobrem uma necessidade, o AIR permite usar extensões nativas, que expõem APIs em ActionScript e fazem a ponte com código nativo para acessar funcionalidades específicas de cada plataforma. Além de abrir acesso a recursos que não estão disponíveis nas classes internas, esse caminho pode ser usado quando uma implementação em código nativo fizer mais sentido para o tipo de tarefa.
Onde o AIR impõe limites
O AIR não oferece acesso direto a elementos nativos de interface (como barras de navegação e controles próprios do sistema) da mesma forma que um toolkit nativo faria. Outro ponto é que as vantagens da plataforma dependem do aplicativo ter sido construído especificamente para AIR, já que só assim ele consegue aproveitar os recursos adicionais do runtime. Em conteúdo web embarcado, scripts podem operar com algumas limitações de segurança, o que influencia como certas partes do app são arquitetadas.
Prós
- Multiplataforma, com foco em apps de desktop e mobile feitos para o runtime
- Suporte a ActionScript e integração com fluxos ligados ao Adobe Animate e ao Apache Flex
- Acesso ampliado a arquivos e recursos locais em comparação com apps que rodam apenas no navegador
- Possibilidade de usar extensões nativas para alcançar recursos específicos de cada sistema
Contras
- Não dá acesso direto aos componentes nativos de interface como um framework nativo
- O app precisa ser desenvolvido para AIR para aproveitar os recursos da plataforma
- Conteúdo JavaScript em visualizações web pode ter limitações de segurança