通过Kivy将Python文件打包成apk

通过Kivy将Python文件打包成apk一.前言Kivy是一个开源的Python框架,用于快速开发应用,实现各种当前流行的用户界面,比如多点触摸等等。且Kivy可以运行于Windows,Linux,MacOS,Android,iOS等当前绝大部分主流桌面/移动端操作系统。周日在配置Kivy时,教程繁多繁琐,让自己有些找不着北,挨个试后,经常在某处卡壳,屡屡碰壁,希望自己接下来的

大家好,又见面了,我是你们的朋友全栈君。

我是精神抖擞王大鹏,不卑不亢,和蔼可亲~  
计算机硕士,目前小米大数据开发。日常会分享总结一些自己面试实际问题的回答,欢迎一起讨论。
公众号:diting_dapeng

一.前言

 Kivy 是一个开源的 Python 框架,用于快速开发应用,实现各种当前

流行的用户界面,比如多点触摸等等。且Kivy 可以运行于 Windows, Linux,

MacOS, Android, iOS 等当前绝大部分主流桌面/移动端操作系统。

周日在配置Kivy时,教程繁多繁琐,让自己有些找不着北,挨个试后,经常在某

处卡壳,屡屡碰壁,

希望自己接下来的集成操作可以为和我一样初开始无所适从的人带来一些帮助

感谢@校长叫我起床,@面包群友的帮助,让我在配置无门时找到了方向;

—镜像文件及GitHub链接传送门在底部,欢迎拍砖

二.安装操作

 将Py文件打包成apk文件,江湖上暂有如下3个方法:

       1.通过Buildozer;(在linux环境下实现,集成式框架比较容易实现

       2.通过python for android,(这种可以在windows下实现,但需要安装和配置许多内容,较为繁琐)

       3.通过Kivy Launcher上打包(需要用到谷歌市场,但想在我大天朝嘛….建议你选择别的)

 kivy打包的Buildozer有两种工具,分别是p4a和buildozer,kivydev64使用p4a,kivydev使用buildozer。 buildozer其实是对p4a做了进一步封装,换汤不换药。如果你不想配置recipe和dist之类的参数,可以使用buildozer,但是每次都要复制已经打包成功的项目目录下的.buildozer到要打包的项目目录下,buildozer才不会重复下载sdk和ndk等。而.buildozer目录通常在1G以上,每个项目目录如果都复制一份,不久就会耗尽虚拟机的硬盘空间。所以推荐使用p4a,也就是kivydev64,这个打包环境也是第一个建立在64位ubuntu的环境。

 1. 安装好环境后,打开VirtualBox,楼主遇到的第一个问题就是:

 通过Kivy将Python文件打包成apk

 这个问题产生的原因是因为VirtualBox的环境不兼容,win7的话需要将其兼容性配置为Windows Server  2008进行运行;

 2. 在成功导入打开的过程中,还会遇到一个问题,会提示你usb接入错误,此时需要你安装这个文件:

 通过Kivy将Python文件打包成apk

 下载的链接地址已经放到下方;

 3.成功将镜像环境导入后,如果你能看到此神兽Ubantu,说明你的胜利已经在前方:

 通过Kivy将Python文件打包成apk

 3. 进入到/home/kivydev//test是测试目录,该目录下的py2apk是py27打包,py3apk是py35打包,这两个版本的差别只在于不同版本的py配置文件,在该目录下的py文件,必须使用main.py命名才能进行打包,先在该目录下对main.py进行编译,看能否成功执行:python3 main.py

 4. 可以成功编译后,接下来在py2apk或py3apk的目录下执行打包命令:

  p4a apk

    即可在该目录下产生apk的文件;

 5.这里仅作为测试,将该main.py生成的apk进行,在手机上的运行效果如图:

 通过Kivy将Python文件打包成apk

三.后话

 至此,已经可以完成简单的py文件的封装了,至于py文件如何编写成适于安卓版本的,以及如何更换图标,如何再进行设置里面的内容,建议阅读官方文档进行学习,文档地址:https://github.com/nkiiiiid/Kivy-CN

 再次感谢前行的铺路者们!

四.镜像文件及链接传送门

 打包环境下载地址kivydev64v1.0_免费高速下载|百度网盘-分享无限制

 Vbox4.3.12下载地址VirtualBox-4.3.12-93733-Win.exe_免费高速下载|百度网盘-分享无限制

 vbox4.3.12 Extension pack下载地址Oracle_VM_VirtualBox_Extension_Pack-4.3.12-93733.vbox-extpack_免费高速下载|百度网盘-分享无限制

 系统 Ubuntu 16.04 64位

 用户名 kivydev 密码 kivydev

 用户名root 密码 root

 已安装增强工具,支持共享文件夹、分辨率调整、宿主机与虚拟机复制粘贴

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143911.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 普通函数和箭头函数的区别

    普通函数和箭头函数的区别普通函数和箭头函数的区别:箭头函数的this指向规则:1.箭头函数没有prototype(原型),所以箭头函数本身没有this2.箭头函数的this指向在定义的时候继承自外层第一个普通函数的this。3.不能直接修改箭头函数的this指向4.箭头函数外层没有普通函数,严格模式和非严格模式下它的this都会指向window(全局对象)箭头函数的箭头函数的arguments箭头函数的this指向全局,使用arguments会报未声明的错误箭头函数的this指向普通函数时,它的argum

    2022年6月29日
    20
  • 史上最全的中高级JAVA工程师-面试题汇总

    史上最全的中高级JAVA工程师-面试题汇总史上最全的java工程师面试题汇总,纯个人总结,精准无误。适合中高级JAVA工程师。

    2022年6月13日
    23
  • can’t connect to MySQL server on_mysql安装1045错误代码

    can’t connect to MySQL server on_mysql安装1045错误代码当您创建具有’%’的用户时,如果您使用localhost删除用户,则会发生此错误。让我们用“%”创建一个用户,并将该用户删除为本地主机。语法如下CREATEUSER’yourUserName’@’%’IDENTIFIEDBY’yourPassword’;让我们使用以上语法创建一个用户。创建用户的查询如下mysql>CREATEUSER’Jack’@’%’IDENTIFIED…

    2022年8月12日
    4
  • Java基础语法(十)数组?不不不,是麻袋,既能装白菜,又能装妹子

    Java基础语法(十)数组?不不不,是麻袋,既能装白菜,又能装妹子

    2021年5月17日
    132
  • 根据eia/tia接线标准,简述双绞线的线序_rj45接线图

    根据eia/tia接线标准,简述双绞线的线序_rj45接线图今日看到一篇文章    〈巧识妙记双绞线〉原文:http://www.szerc.com/blog/more.asp?name=goodchun&id=3791 作者总结的两句口决真的很妙,不愧是工作在教育第一线的人民教师。以前我也自己写了个口诀,是“A绿B橙,中蓝尾褐,边白先中白后”现在看起来真实迂腐可陈。自己在大春老师的口诀上改了改,将双单、单双——双色在单位,单色在双位,即花线在前也总结进

    2022年9月17日
    3
  • postman接口自动化测试实战_apipost接口测试

    postman接口自动化测试实战_apipost接口测试Apifox介绍Apifox是API文档、API调试、APIMock、API自动化测试一体化协作平台,定位Postman+Swagger+Mock+JMeter。通过一套系

    2022年7月29日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号