首页 > 软件开发 > 你做梦都想知道的怎么用python开发app

快速发布【软件开发】相关需求,专业顾问为您服务 快速发布

用此手机号发布,您还可以点击 更换

发布需求
请输入正确的手机号
请输入正确的验证码

您是不是要找:

  • 专家问诊,提供专业建议
  • 急速响应,体验省心
  • 根据需求灵活定制解决方案

你做梦都想知道的怎么用python开发app

标签:- 2017-7-25 作者:钟静123

  用Python写安卓APP肯定不是最好的选择,但是肯定是一个很偷懒的选择, 下面随小编一起看看怎么用python开发app吧。


  其实笔者想做两个APP来着,一个是自己写着好玩的,一个是关于运维的。


  我们使用kivy开发安卓A****ivy是一套专门用于跨平台快速应用开发的开源框架,使用Python和Cython编写,对于多点触控有着非常良好的支持,不仅能让开发者快速完成简洁的交互原型设计,还支持代码重用和部署,绝对是一款颇让人惊艳的NUI框架。


  因为跨平台的,所以只写一遍代码,就可以同时生成安卓及IOS的APP,很酷吧。


  kivy安装


  环境说明Python2.7.10


  更新pip,setuptools


  python-mpipinstall--upgradepipwheelsetuptools


  然后是安装所需要的依赖


  pythonmpipinstalldocutilspygmentspypiwin32kivy.deps.sdl2kivy.deps.glew\


  kivy.deps.gstreamer--extra-index-


  值得注意的是,上面的安卓需要访问Google,所以请自备梯子,而且kivy.deps.gstreamer这个包比较大(95MB),可以单独本地安装,


  然后就是安装kivy了


  python-mpipinstallkivy


  至此,安装就已经完毕了,值得注意的是64位系统没有开启虚拟化支持,在导入kivy的时候会报错,如果是64位系统就设置一下机器的BIOS,开启虚拟化支持吧。


  注:这里只是kivy的运行环境,这样我就能直接在windows机器上直接调试了,怎么将代码编译成APK文件我们会在后面讲到。


  如果kivy在python中应该就能导入了。


  wKioL1aSPUOCRCPMAAAhlWpoOH8332.png


  按照世界惯例,我们”hello”一下吧。


  新建一个.py文件


  fromkivy.appimportApp


  fromkivy.uix.buttonimportButton


  classTestApp(App):


  defbuild(self):


  returnButton(text='Hello,kivy')


  TestApp().run()


  运行


  然后会弹出一个框,大概如下,点击”hello,kivy”会变颜色


  点击窗口并按“F1”会这个窗口的一些属性


  然后我们回过头看一看代码。


  ##导入App,然后让TestApp这个类继承


  fromkivy.appimportApp


  ##导入一个Button,运维有这个button,当你点击的时候才会有所反应


  fromkivy.uix.buttonimportButton


  ###定义类,名字必须是xxxApp


  classTestApp(App):


  ###build一个Button


  defbuild(self):


  ###返回一个Button,文字内容是“Hello,kivy”


  returnButton(text='Hello,kivy')


  ##运行,因为继承了App,所以才有的run这个方法


  TestApp().run()


  上面就是我们的Hello了


  在windows上运行当然没有什么太大的意义,怎么在安卓手机上运行才是我们想要的,


  这时我们需要一个编译环境。


  官方说明的环境,如下:


  You’ll need:


  A linux computer or avirtual machine


  Java


  Python 2.7 (not 2.6.)


  Jinja2 (python module)


  Apache ant


  Android SDK


  虽然官方提供了一个似乎还不错的虚拟机镜像,但是还是有很多内容需要翻出去,所以笔者在这里提供相对而言更加完善的镜像



  注:virtualbox,vmware需自行下载


  root密码:kivy


  默认使用账户kivy,密码:kivy123


  当然你也可以下载官方镜像,因为第一次编译需要去国外下一大堆东西,所以请自备梯子。


  Virtual Machine


  ***irtual Machine with Android SDK and NDK and all otherpre-requisites pre installed to ease apk generation:


  Kivy Buildozer VM


  Or select theTorrent


  在笔者提供的镜像里,桌面上有一个dev_and,只要将上面写的代码,放入这个文件夹即可(当然也可以在其他目录,后面会讲到)。


  1


  cdDesktop/dev_and/


  ##初始化会在当前目录生成一个buildozer.spec文件 用于配置生成的apk相关信息


  1


  buildozerinit


  ###修改buildozer.spec文件


  1


  vibuildozer.spec


  至少修改下面三项


  #(str)Titleofyourapplication


  title=helloworld


  #(str)Packagename


  package.name=helloapp


  #(str)Packagedomain(neededforandroid/iospackaging)


  package.domain=youer.com


  然后注释


  #(str)Applicationversioning(method1)


  #version.regex=__version__=['"](.*)['"]


  下面这行改为非注释


  version=1.2.0


  最后我们生成我们需要的apk文件


  buildozer-vandroiddebug


  buildozer.spec更详细的相关参数配置参考:


  buildozer命令会在当前文件夹创建一个bin,该文件夹里面有我们想要的apk文件


  安装以后应该是这样


  话说在编译的时候可能出现空间不足的情况,根据虚拟机的不同(vmware或virtualbox)自行扩容吧。


  最后我们来瞧瞧简易版Python开发的2048这个游戏的源代码。


  先看效果图


  试玩了一下,还是蛮流畅的,有兴趣的可以下载玩一下


  这个游戏代码虽然不长,但是还是蛮占篇幅的,所以简要的说明一下流程。


  主要由三部分组成,一是素材,图片音频之类的文件,二是Python代码,三是kv文件,这个kv文件有点像html中的css。


  Python代码的文件名一般命名为main.py


  然后一定有一个叫做XXXApp的类,并继承App。


  比如该类叫做GameApp,那么该目录下的kv文件则必须为Game,如上图所示,如果不是,那么kv文件中的一些设定就不会生效。


  以上就是小编为大家带来的怎么用python开发app,希望对大家有所帮助。


最新文章推荐

软件开发暂无最新文章查看全部推荐文章>

推荐人才