如何完全使用python开发Android应用程序?

如何完全使用python开发Android应用程序?,android,python,Android,Python,我想开发一个(相当简单的)android应用程序,通过Play Store分发。我想完全用python来实现这一点。然而,在线研究并没有给我很大启发:大多数评论要么是过时的(>1年前,我觉得从那时起可能会有更好的python集成),要么是谈论在android中运行python(例如) 因此,我正在寻找有关以下问题的信息: 完全用python开发应用程序可行吗?有什么工具可以做到这一点?(例如,Kivy是否值得推荐?) 如果是:实现这一点的最佳软件环境是什么?(我尝试使用Android Stud

我想开发一个(相当简单的)android应用程序,通过Play Store分发。我想完全用python来实现这一点。然而,在线研究并没有给我很大启发:大多数评论要么是过时的(>1年前,我觉得从那时起可能会有更好的python集成),要么是谈论在android中运行python(例如)

因此,我正在寻找有关以下问题的信息:

  • 完全用python开发应用程序可行吗?有什么工具可以做到这一点?(例如,Kivy是否值得推荐?)
  • 如果是:实现这一点的最佳软件环境是什么?(我尝试使用Android Studio失败,但找不到在那里运行python代码的方法。)
我对应用程序开发还很陌生,如果有任何线索可以用python而不是Jave等来做,我将不胜感激,我还不知道

非常感谢您提前提供的帮助。

您可以尝试-如他们网站上所述:

用Python编写应用程序,并使用丰富的本机用户界面在iOS、Android、Windows、MacOS、Linux、Web和tvOS上发布它们。一个代码基。多个应用程序

如果你现在想用Python编写Android应用程序,另外还有一个优势,那就是如果你想在其他列出的平台上做点什么,你以后就不需要再学习其他框架了


这是最新的版本。

Android,Python

当我在你的问题中看到这两个关键词在一起时,我首先想到的就是这个

在使用androidstudio进行Java原生Android开发之前,我已经尝试过了。太棒了。以下是我可以发现的一些优势


简单易用

有了python基础知识,学习它不会有困难


良好社区

它有很好的文档记录,有一个非常活跃的社区


跨平台。

您可以使用这个框架为Android、iOS、Windows、Linux甚至Raspberry Pi开发东西。 开源


它是一个自由软件

如果您想要商业许可证,至少很少有it(跨平台)竞争对手希望您支付费用


加速图形支持

在OpenGL ES 2上构建的图形引擎使其适用于需要快速图形渲染的软件,如游戏




现在进入问题的下一部分,您不能将Android Studio IDE用于Kivy。是设置开发环境的详细指南。

Android上的python应用程序有两个主要竞争者

查库比

它与Android构建系统集成,为所有Android功能提供了Python API。引用该网站的话,“完整的Android API和用户界面工具包可直接供您使用。”

Beeware(Toga小部件工具包)

这提供了一个多目标transpiler,支持许多目标,如Android和iOS。它使用映射到主机接口调用的通用小部件工具包(toga)

哪一个? 这两个项目都是活动项目,他们的github帐户显示了相当多的近期活动

Beeware Toga与所有小部件库一样,有助于将基础知识应用到多个平台。如果你有基本的设计,并希望扩展到其他平台,这应该适合你


另一方面,Chaquopy在将pythonapi映射到Android方面更为精确。它还允许您混合使用Java,如果您想使用来自其他资源的现有代码,这很有用。如果你有严格的设计目标,并且主要是针对Android,这是一个更好的资源。

回答你的第一个问题:是的,用纯python开发Android应用程序是可行的,为了实现这一点,我建议你使用,它只是一套python工具,这两者配合得非常好,使您能够用python开发平台本机应用程序

由BeeWare的创建者进行检查,完美地解释和演示其应用

工作原理 Android的首选实现语言是Java——因此,如果您想用Python编写Android应用程序,您需要有一种在Java虚拟机上运行Python代码的方法。这就是VOC的作用。是一个transpiler—它接受Python源代码,将其编译为CPython字节码,然后将该字节码转换为与Java兼容的字节码。最终结果是Python源代码文件被直接编译为Java.class文件,该文件可以打包到Android应用程序中

VOC还允许您像访问Python对象一样访问本机Java对象,用Python类实现Java接口,用Python类实现Java类的子类。使用它,您可以直接针对本机Android API编写Android应用程序

编写本机Android应用程序后,可以使用将Python代码打包为Android应用程序

公文包是一种将Python项目转换为独立本机应用程序的工具。您可以为以下项目打包项目:

  • 苹果
  • 窗户
  • Linux
  • iPhone/iPad
  • 安卓
  • 苹果电视
  • 电视
您可以使用BeeWare套件检查用Python编写的本机Android。关于GitHub

除了BeeWare工具之外,您还需要安装JDK和Android SDK来测试运行您的应用程序

回答你的第二个问题:一个好的环境可以是你喜欢的任何东西,无论是文本编辑器、命令行还是IDE,如果你想找一个好的python IDE,我建议你试试,它有一个免费的社区版,它的环境与安卓st类似