Como converter a aplicação web Django em uma aplicação Android?
Sim, você pode e há duas maneiras de fazer isso -
Você pode usar apenas um WebView que serve seu site como um todo, mas a única vantagem real para isso seria - você não terá que codificar um Android nativo do zero e você terá um "aplicativo" pronto para ir apenas se o seu site for móvel (que em 2018, tenho certeza que é). Para elaborar mais, seus usuários terão a mesma experiência que teriam com seu site se o estivessem visualizando em um navegador em um celular, mas só teriam que baixar o aplicativo uma vez da PlayStore e não mais digitar manualmente a URL no navegador.
No entanto a desvantagem disso seria que não haveria ganhos reais de performance ou recursos nativos que você poderia utilizar se fosse pela rota que mencionei acima ^.
As vantagens que você teria ao desenvolver um aplicativo totalmente nativo para seu website seriam as seguintes - aumento de performance; seu aplicativo não teria que carregar ícones ou botões, arquivos Javascript, folhas de estilo CSS, ou qualquer outro arquivo. Seria muito mais suave e você teria uma grande variedade de recursos para usar no desenvolvimento de coisas que os usuários do aplicativo poderiam fazer como enviar notificações ou armazenar dados em cache para tempos de exibição mais rápidos, ou ter os usuários marcando coisas nos favoritos se o seu aplicativo web tiver conteúdo estruturado assim no dispositivo local. Então há a possibilidade de que se o seu aplicativo tiver uma boa aparência e se sentir bem, então ele terá uma classificação mais alta e as pessoas ficariam mais propensas a baixá-lo, ao contrário do fato de que se as pessoas começarem a notar que o desempenho do aplicativo é igual ao do site, se não pior (já que ele também ocupará espaço no armazenamento local), ele terá más críticas.
Agora a verdadeira desvantagem disso é - você precisará ter um entendimento claro do Java (ou Kotlin) OU Reagir Nativo, que significa Javascript. Pessoalmente, eu não estou totalmente convencido da idéia do React Native, então eu vou falar mais sobre o Kotlin já que eu acho que é muito melhor que Javascript, especialmente para o desenvolvimento do Android. Além disso, você provavelmente terá que configurar uma api REST inteiramente nova para a sua aplicação Django, caso você ainda não tenha feito.
Então, primeiro, você terá que projetar a sua aplicação. Você quer que ele se pareça com o site móvel que você já tem ou você quer um visual diferente? Você provavelmente terá que mudar algum componente chave de design do seu site, como a navegação para o seu aplicativo. O Android pede que as pessoas tenham uma navegação inferior ou uma guia de visualização deslizante. Ambos são ótimos, mas eu acho a navegação no estilo de abas deslizantes muito mais atraente. Em seguida, você teria que configurar o seu design principal real. O seu site tem algum conteúdo iterável? Se tiver, você provavelmente vai querer ter um RecyclerView para listar o conteúdo que será servido em algum formato - muito provavelmente JSON. Eu sugiro que você use uma biblioteca externa para isso. Minha goto é Volley.
Depois de tudo isso, você vai querer projetar sua estrutura API. Os desenvolvedores do Django usam principalmente a estrutura django-rest-framework. Já existe há algum tempo e é, sem dúvida, o mais famoso framework REST. A melhor parte é que não é apenas compatível com o Django, mas nós podemos usar seus serialisers para qualquer classe construída por nós.
>p>O que são serialisers que você pode perguntar? Boa pergunta - neste contexto, é o processo de conversão dos dados que temos armazenados como modelos Django que só podem funcionar com seu ORM em diferentes tipos como JSON ou XML que podem ser analisados universalmente.Então se seu site tem alguma característica CRUD, você gostaria que eles tivessem seu próprio endpoint separado. Uma parte importante do design do REST é que os dados não mantêm o contexto. É completamente independente de quaisquer vistas ou cookies ao redor no navegador. Isso significa que você não será capaz de usar a autenticação e o gerenciamento de Usuários de Deus dotados do django.contrib.auth.
Então um componente chave para ter código limpo e uma boa estrutura da sua API REST é ter um design claro logo no início. Pegue um pedaço de papel e um lápis e faça um gráfico de todo o seu layout após fazer sua pesquisa sobre o desenvolvimento da API REST.
Todos os melhores.
Artigos semelhantes
- Quais são as aplicações Django mais úteis? Quais aplicativos tornam o seu desenvolvimento Django muito mais fácil?
- Qual o servidor web que melhor se adapta ao Django? Apache, Nginx ou outra coisa qualquer?
- Django é eficiente para desenvolver uma aplicação móvel?
- É impossível converter uma aplicação Android .APK para uma aplicação executável Windows .EXE?