源于: https://blog.csdn.net/qq_37030400/article/details/107620264?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-6-107620264.nonecase&utm_term=kivy%20pycharm%20%E6%89%93%E5%8C%85

一、准备工具

Pycharm ,也可以用Jupyter或者其它编辑器代替,只是一个编辑器罢了;

虚拟机**VirtualBox**,我下载的是Windows平台的;

二、安装kivy

可以在CMD运行框内键入pip install指令安装kivy,然后用在Jupyter上进行编辑。由于我用的编辑器主要是Pycharm,所以我在Pycharm上安装。

1.在cmd命令框内键入(使用Jupyter的用户参考)

pip install Kivy-1.11.1-cp37-cp37m-win_amd64.whl

pip install kivy_deps.glew-0.2.0-cp37-cp37m-win_amd64.whl

pip install kivy_deps.gstreamer-0.2.0-cp37-cp37m-win_amd64.whl

pip install kivy_deps.sdl2-0.2.0-cp37-cp37m-win_amd64.whl

2.在Pycharm里安装kivy

[注]angle也可以不安装

或者在Pycharm的命令框里安装,和CMD里安装是一样的。

同样在里面键入

pip install Kivy-1.11.1-cp37-cp37m-win_amd64.whl

pip install kivy_deps.glew-0.2.0-cp37-cp37m-win_amd64.whl

pip install kivy_deps.gstreamer-0.2.0-cp37-cp37m-win_amd64.whl

pip install kivy_deps.sdl2-0.2.0-cp37-cp37m-win_amd64.whl三、安装虚拟机

1.下载VirtualBox以后,安装到自定义的目录下(强烈建议全英文)

2.安装插件:双击Oracle_VM_VirtualBox_Extension_Pack-4.3.12-93733.vbox-extpack文件,就能安装。

四、建立共享文件夹

因为虚拟机无法和Windows直接交互,所以文件传输必须依靠共享文件夹进行)。

我在这里创建了一个VirtualDisk文件夹作为共享文件夹

【这一步可以理解为创建一个空白文件夹】,我们需要记住它的位置。

然后将之前下载好的kivydev.ova复制到这个文件夹里(不复制也可以,但是要保证所有文件的路径都是英文路径)

五、导入kivydev.ova系统

安装完成的虚拟机是没有任何系统的,此时需要导入kivydev.ova系统。

在【管理】菜单下,点击【导入虚拟电脑】

选择下载好的kivydev.ova文件

导入

等两三分钟就可以完成导入。

导入完成。

六、配置虚拟机

点击设置,进入虚拟机的设置界面,然后找到最下面的【共享文件夹】,点击右边的加号,添加共享文件夹位置。

粘贴我们之前创建的【共享文件夹】位置,将【自动挂载】打勾,点击确定,配置完成。

其它配置可以调节运行内存(我比较喜欢设为1024),显存(我设置为128)等等,也可以不动。

至此,我们已经完成了kivy安装和虚拟机部分的安装,接下来就要写一个写一个程序,进行打包测试。

七、编辑一个kivy程序进行测试

可以将我的代码复制到Pycharm里进行编译,编译没问题的话将文件复制到共享文件夹内,重命名为“main.py”,方便下一步在虚拟机内进行调用。

这是一个简易画板功能的代码。

from kivy.app import App

from kivy.uix.widget import Widget

from kivy.graphics import Color,Ellipse,Line

from random import random

from kivy.uix.button import Button

class MyWidgetWidget(Widget):

def on_touch_down(self, touch):

color=(random(),random(),random())

with self.canvas:

Color(*color)

touch.ud['Line']=Line(points=(touch.x,touch.y),width=5)

def on_touch_move(self, touch):

touch.ud['Line'].points=touch.ud['Line'].points+[touch.x,touch.y]

class MyPaintApp(App):

def build(self):

parent=Widget()

self.painter=MyWidgetWidget()

clearbtn=Button(text="Clear")

clearbtn.bind(on_release=self.clear_canvas)

parent.add_widget(self.painter)

parent.add_widget(clearbtn)

return parent

def clear_canvas(self,obj):

self.painter.canvas.clear()

if __name__=="__main__":

MyPaintApp().run()

运行效果(按住鼠标左键随便在画布上画几笔):

八、打包成Apk文件

打开我们创建完成的虚拟机。点击启动。

加载会比较慢,耐心等待到进入Linux桌面。

如果出现错误,cancel掉就可以继续了。

打开桌面的File System,接着点击左边栏sf_VirtualDisk(我们之前创建的共享文件夹)。里面有我们保存的"main.py"和"kivydev.ova"。

点击左边栏kivydev目录下找到kivy,在kivy目录下进入accordion。再将"main.py"复制到当前目录下(即**/home/kivydev/kivy/accordion/**目录下)。它会覆盖此目录下的示例——一个main.py文件。因为打包的时候,主程序的名字都是main.py。

右击空白区域,打开 Open Terminal Here命令框。

(如果目录下没有buildozer.spec文件,执行这一步)在此框内键入

buildozer init

1

生成一个buildozer.spec文件

接着再输入命令

gedit buildozer.spec

1

打开buildozer.spec文件,主要修改Title(应用名字,我设置为SamplePainter),package.name(打包名,同样设置成SamplePainter),package.domain(打包成哪一种ios或者安卓,这里我不改,默认打包成安卓文件)。其余的建议暂时不要修改。

修改完成后保存 Save,关闭文件,回到命令框。

在命令框内键入:

buildozer android_new debug

1

进行打包,此过程需要等待几分钟。

打包完成,按照提示的地址寻找打包后的文件。

关闭命令框,在bin文件夹下看见我们的应用SamplePainter,另一个MyApplication是示例文件,不予理会。

把这个文件复制到共享文件夹内。

九、发送到手机并安装

回到Windows,打开我们的共享文件夹VirtualDis,可以看见创建的SamplePainter.apk文件。

把文件发送到手机,【注意】如果文件名后缀不是apk,请手动重命名为apk后缀。安装到手机。

打开App,看看效果:

还可以。

十、总结

kivy功能不算强大,但是很便捷,可以把想法快速部署到移动端,希望大家创造自己独特的App!有空再写写我的kivy小项目嘿嘿!

python写的程序怎么打包手机app_Python Kivy(App开发) Windows安装打包步骤相关推荐

  1. python写电脑程序_【初学者教程】在电脑上安装Python,写第一个程序

    欢迎来到Python的世界 1.存在Python 2和Python 3两个版本,我该用哪个? 强烈建议用Python 3.2020年1月1日起官方就不再维护Python 2了,2已经过时. 2.下载P ...

  2. 快速掌握用python写并行程序

    目录 一.大数据时代的现状 二.面对挑战的方法 2.1 并行计算 2.2 改用GPU处理计算密集型程序 3.3 分布式计算 三.用python写并行程序 3.1 进程与线程 3.2 全局解释器锁GIL ...

  3. python如何在没有环境的电脑上执行_没安装python的电脑可以运行python写的程序吗 python语言编写的程...

    py2exe 能够把 Python script 转换成可以在windows上独立执行的(即不需安装Python)的exe程序(加上其它必需的运行时函数库). -- 摘自百度知道 py2exe能够把P ...

  4. 用Python写表白程序,给另一半一个惊喜

    每年的七夕或者情人节,基本送的都是玫瑰花或者小礼物,送多了,也就没有了什么惊喜,今天教大家一个用Python写表白程序的办法,给你的另一半一个惊喜. 用python实现表白程序的方法: 1.创建GUI ...

  5. 用python写一个程序

    用python写个程序 1.概述 计算机程序(Computer program) 是指一组指示计算机或其他具有处理能力装置每一步动作的指令,通常用于程序设计的语言编写 .能够写python的程序有很多 ...

  6. 《Python+Kivy(App开发)从入门到实践》自学笔记:打包——Windwos打包

    章节目录及知识点总览 6.1 Windows打包 将python程序编译成可以在windows上运行的.exe程序. 操作过程中踩过的坑: 1.书上使用的测试文件没找到(使用画板程序测试) 2.通过6 ...

  7. 我想用python写一个股票交易策略回测软件,请给出框架及步骤等建议

    当然,我很愿意为您提供关于使用 Python 写股票交易策略回测软件的建议.以下是一般的步骤和框架: 数据获取:首先,您需要获取所需的历史股票数据.您可以使用各种数据源,例如 Yahoo Financ ...

  8. python写的程序怎么打包成exe_python--- 如何将自己的程序打包成exe ?

    最近用python Tkinter 写了一个看stock的小工具.. .  把它调节成半透明悬浮    你懂得 但是每次总用pycharm 或者调python去加载使用多少有些不便,如何打包成exe成 ...

  9. python写小程序-用python写个简单的小程序,编译成exe跑在win10上

    每天的工作其实很无聊,早知道应该去IT公司闯荡的.最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅. 人的精力毕竟是有限的,所以 ...

最新文章

  1. 微信小程序页面之间数据传递
  2. linux命令执行返回值(附错误对照表)
  3. Cocos2d—声音API
  4. struts2 中的 addActionError 、addFieldError、addActionMessage方法的区别
  5. 5分钟了解Mockito
  6. 第一章 计算机语言分类
  7. 6.824 RPC lesson2 2020(二)
  8. an 转换器_400V耐压场效应管替代IRF730B型号参数,使用在DC-DC电源转换器。_场效应管吧...
  9. c# imager让图片有圆角unity_Unity纹理-引题和单张纹理
  10. C++ 形参与实参的传递
  11. 协程(Python)
  12. Moto X的谷歌基因
  13. OpenCV颜色空间——HLS颜色空间
  14. Visio实用技巧总结
  15. 还挺好看!用命令行画思维导图;66天机器学习之旅;斯坦福CS234 强化学习课程;哈佛CS50 计算机科学导论课程;前沿论文 | ShowMeAI资讯日报
  16. 数据仓库系列9- 大数据分析
  17. 阿里云DevOps助理工程师认证(ACA)笔记
  18. App Store评论优化,让你的APP评论上涨
  19. 世界首个由队伍拥有并运营的CS:GO电竞联盟FLASHPOINT成立
  20. cs224u GloVe词向量方法

热门文章

  1. Dbeaver_ee使用mysql和mongodb
  2. Janus源码分析(4)——信令交互过程
  3. cPickle和Pickle
  4. 让你实现财富自由,从此不再缺资金
  5. python open 函数漏洞_python和django的目录遍历漏洞
  6. php论坛mybb,MyBB
  7. 好程序员Java分享MySQL之SQL入门(一)
  8. Linux脚本的制作命令
  9. 计算机it知识,IT行业-计算机基础知识总结
  10. JavaScript(js)的多次弹窗