Aplicação Android completamente em python [fechado]

Eu gostaria de desenvolver um (bastante simples) aplicativo android para ser distribuído através da Play Store. Gostaria de o fazer completamente em python. No entanto, a pesquisa online não me esclareceu: a maioria dos comentários ou estão desatualizados (>1 ano de idade, e eu sinto que pode haver uma melhor integração do python desde então) ou eles falam sobre executar python em android (por exemplo aqui).

Por isso, estou à procura de informações sobre as perguntas:
    É isso? exequível para desenvolver um aplicativo completamente em python-e quais são as ferramentas para fazê-lo? (Por exemplo, Kivy é recomendável?)
  • Em caso afirmativo: quais são os melhores ambientes de software para implementar isto? (Eu tentei sem sucesso usar o Android Studio, mas não consegui descobrir uma maneira de executar o código python lá.)

sou muito novo no desenvolvimento de aplicativos e gostaria muito de qualquer pista de fazer isso em python, em vez de em Jave etc. o que ainda não sei.

Muito obrigado pela ajuda. avancar.

Author: Ivo, 2018-04-21

4 answers

Para responder à sua primeira pergunta: Sim, é viável desenvolver uma aplicação android em python puro , para o conseguir sugiro que use BeeWare , que é apenas um pacote de ferramentas python, que funcionam muito bem e que lhe permitem desenvolver aplicações nativas de plataforma em python.

Checkout Este vídeo pelo criador do BeeWare que explica e demonstra perfeitamente a sua aplicação

Como é obras

A linguagem preferida de implementação do Android é o Java - por isso, se quiser escrever uma aplicação Android em Python, precisa de ter uma forma de executar o seu código Python numa máquina virtual Java. Isto é o que VOC faz. VOC é um transpilador - ele pega o código fonte Python, compila-o para CPython Bytecode, e então transpila esse bytecode para bytecode compatível com Java. O resultado final é que seus arquivos de código fonte Python são compilados diretamente para um Java .ficheiro da classe, que pode ser embalado em uma aplicação Android.

O VOC também lhe permite aceder a objectos Java nativos como se fossem objectos Python, implementar interfaces Java com classes Python e classes Java subclasse com classes Python. Usando isso, você pode escrever uma aplicação Android diretamente contra o Android APIs nativo.

Depois de ter escrito a sua aplicação Android nativa, pode usar a pasta para embalar o seu código Python como uma aplicação Android.

A pasta é uma ferramenta para converter um projecto Python numa aplicação nativa independente. Você pode empacotar projetos para:

  • Mac
  • janelas
  • Linux
  • iPhone / iPad
  • Andróide
  • AppleTV
  • TvOS.

Você pode verificar este Android nativo aplicação Tic Tac Toe escrito em Python, usando o pacote BeeWare. em GitHub

Além das ferramentas BeeWare, você vai precisar de um JDK e Android SDK instalado para testar a sua aplicação.

E para responder a sua segunda pergunta: um bom ambiente, que pode ser qualquer coisa que você estiver confortável com o ser é um editor de texto e uma linha de comando, ou um IDE, se você está procurando uma boa python IDE sugiro que você tente Pycharm, tem um community edition, que é gratuito, e tem um ambiente similar como o android studio, devido ao fato de que foram feitos pela mesma empresa.

Espero que tenha sido útil.
 8
Author: maroof shittu, 2018-05-30 02:47:31

Pode tentar BeeWare - conforme descrito no seu site:

Escreva seus aplicativos em Python e os libere em iOS, Android, Windows, MacOS, Linux, Web e tvOS usando interfaces de usuário ricas e nativas. Uma base de dados. Múltiplas aplicações.

Dá-lhe vontade de Agora escrever aplicativos Android em Python, além tem a vantagem de que você não vai precisar de aprender mais um framework no futuro se você acabar também querendo fazer algo em um dos outros listados plataforma.

Aqui está o Tutorial para aplicativos Android .

 9
Author: E. Gordon, 2018-05-25 17:42:21
Há dois candidatos primários para aplicações python no Android.

Chaquopy

Https://chaquo.com/chaquopy/

Isto integra-se com o sistema de compilação Android, que fornece uma API Python para todas as funcionalidades do android. Para citar o site "a API Android completa e interface de usuário toolkit estão diretamente à sua disposição."

Beeware (Toga widget toolkit)

Https://pybee.org/

Isto fornece um transpilador multi-alvo, suporta muitos alvos, como Android e iOS. Ele usa um widget toolkit Genérico (toga) que mapeia para as chamadas da interface da máquina.

Qual Deles?

Ambos são projectos activos e as suas contas do github mostram uma grande parte da actividade recente.

O Beeware Toga como todas as bibliotecas de elementos gráficos é bom para obter o básico para várias plataformas. Se você tem projetos básicos, e um desejo de expandir para outras plataformas isso deve funcionar bem para você.

Por outro lado, o Chaquopy é um muito mais preciso em seu mapeamento da API python para Android. Ele também permite que você se misture em Java, útil se você quiser usar o código existente a partir de outros recursos. Se você tem alvos de design estritos, e predominantemente quer atingir Android este é um recurso muito melhor.
 4
Author: harvey, 2018-05-30 01:58:06

Andróide, Python !

Quando vi estas duas palavras-chave juntas na tua pergunta, Kivy foi o que me veio à cabeça primeiro.

Kivy logo

Antes de vir para o desenvolvimento Android nativo em Java usando Android Studio, eu tinha tentado Kivy . É fantástico. Aqui estão algumas vantagens que eu poderia descobrir.


Simples de usar

Com o básico em python, não terá dificuldade em aprender. ele.


Boa comunidade

Está bem documentado e tem uma grande comunidade activa.


Cross platform.

Você pode desenvolver coisas para Android, iOS, Windows, Linux e até mesmo Raspberry Pi com este único framework. Código aberto.


é um software livre

Pelo menos alguns dos seus concorrentes (Cross platform) querem que você pague uma taxa se quiser uma licença comercial.


gráficos acelerados apoio

O motor gráfico do Kivy sobre o OpenGL ES 2 torna-o adequado para softwares que exigem renderização gráfica rápida, como jogos.



Agora passando à próxima parte da pergunta, você não pode usar Android Studio IDE para Kivy. Aqui está um guia detalhado para a criação do ambiente de desenvolvimento.

 2
Author: Anees, 2018-05-29 17:50:37