Como criar soluções híbridas em Android com Ionic
Este artigo apresenta como desenvolver aplicações híbridas em Android utilizando Ionic. Veja também como realizar a integração entre aplicativos híbridos e nativos na plataforma Android.
Também será apresentado o conceito de binding JavaScript code to android code. Todo desenvolvedor mobile deve estar
familiarizado com as tecnologias apresentadas neste artigo se deseja se tornar
um bom profissional. O mundo da computação não separa mais mobile e web como
duas coisas distintas, mas sim como plataformas que mantêm um elo muito forte. Será
visto neste artigo como tirar proveito deste cenário.
Autores: Ricardo Ogliari e Heider Lopes
O desenvolvimento de aplicativos para a plataforma móvel alcançou outro patamar nos últimos anos. A discussão por melhor usabilidade, mais chances de se destacar nos cerca de 3 milhões de aplicativos nas stores da Apple e Android e o problema do custo em manter times distintos de desenvolvimento para as várias plataformas estão em destaque.
A discussão em torno do tempo de entrega e custo talvez seja a mais recorrente ultimamente. E dentro deste contexto, alguns conceitos ganharam força, como aplicativos nativos, web apps e aplicativos híbridos.
Antes mesmo de começar a discutir sobre Ionic (uma plataforma para criação de aplicações híbridas), é necessário distinguir corretamente estes três conceitos.
Um aplicativo nativo utiliza a própria linguagem “oficial” da plataforma alvo, bem como seu SDK (Standart Development Kit).
Por exemplo, para o desenvolvimento de Android é utilizado o Android Studio ou o ADT Bundle. Ambos IDEs (Integrated Development Environment) que trabalham com o Android SDK e cujo o desenvolvimento das aplicações é, na grande maioria dos casos, uma mistura da linguagem de programação Java e da linguagem de marcação XML.
O ponto positivo desta abordagem é ter um controle muito maior em relação a plataforma adjacente. Outro ponto interessante é a própria preferência dos fabricantes e detentores das lojas virtuais para esta abordagem.
O fato da aplicação ser instalada no dispositivo também é um diferencial uma vez que a presença constante no dispositivo permite uma relação mais próxima entre a aplicação e o usuário.
O ponto negativo do aplicativo nativo é a necessidade de se ter várias equipes no caso de desenvolvimento multiplataforma. Estas equipes elevam o custo e prazo do projeto.
Além disso, o gerenciamento destes processos é mais complicado, tornando as entregas de novas versões mais segmentadas e intermitentes. Em alguns casos, o conhecimento das equipes não é balanceado, logo, a entrega das versões fica fragmentada e não simultânea.
Já o WebApp trata da personalização de uma página quando ela é acessada por um dispositivo móvel. Um bom exemplo são sites que, quando acessados por um dispositivo móvel, o usuário é direcionado para outra página.
O ponto positivo do WebApp é a criação de sites multiplataforma, ou seja, independente de quem está fazendo o acesso, as páginas entregues serão quase as mesmas.
Com isso, o custo e tempo do projeto pode cair drasticamente. A entrega de novas versões também é muito simplificada. Basta atualizar as páginas no servidor web e todas as próximas requisições HTTP receberão o novo projeto.
Como ponto negativo temos a obrigação do usuário abrir um browser para ter acesso ao webapp. Tudo bem que o HTML5 já pode fazer cache de alguns arquivos da página e mantê-los persistentes em possíveis acessos off-line.
Porém, o HTML5 ainda está em trabalho, sendo assim, não há uma garantia 100% de que todos os browsers agem da mesma forma. Aliás, a falta de padrões é justamente um problema nesta abordagem. Além disso, a não instalação de um aplicativo deixa o vínculo usuário-aplicação mais fraco.
Por fim, um aplicativo híbrido tenta unir o melhor dos dois mundos. O projeto é criado com a tríade HTML5, CSS3 e JavaScript. Depois disso, é gerado um aplicativo que pode ser colocado na store da sua plataforma preferida e baixado e instalado pelo usuário. Na aplicação, a forma usada é um componente Web View que encapsula as páginas e as apresenta no formato de uma aplicação nativa.
E ela tem pontos negativos? Pode parecer que não, mas tem. Os browsers e a falta de padrões continuam nesta abordagem. Além disso, por mais avançados que os frameworks híbridos estejam, esta abordagem sempre será um pouco mais lenta que aplicativos nativos e não terá o mesmo acesso que a aplicação nativa teria.
Independente do julgamento do leitor sobre as três possibilidades, é bom lembrar que não existe a opção perfeita, que não existe a “bala de prata”. Dependendo do projeto, custo, público alvo, tempo, dinheiro em caixa e vários outros atenuantes, é melhor uma forma ou outras. " [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo