使用Kivy將python程序打包為apk文件
1.概述
Kivy
是一套Python
下的跨平臺開源應用開發(fā)框架,官網(wǎng),我們可以用
它來將Python
程序打包為安卓的apk
安裝文件。以下是在windows環(huán)境中使用。
安裝和配置的過程中會下載很多東西,確保你能夠穩(wěn)定地訪問外網(wǎng)
,另外推薦一個視頻教程:Youtube
2. 步驟
第一當然是安裝了Python
,我的版本是Python 2.7.13
,然后就是安裝Kivy
包:
官網(wǎng)有詳細的Kivy包的安裝步驟,按照該步驟走完就安裝ok。
然后就是寫一個簡單的程序main.py
測試一下:
import kivy kivy.require('1.9.1') from kivy.app import App from kivy.uix.button import Button class test(App): def build(self): return Button(text='hello world') if __name__ == '__main__': test().run()
運行截圖:
運行成功,那開發(fā)環(huán)境基本沒問題了。然后下面就是怎么將這個程序打包成apk
。
首先需要安裝虛擬機 VirtualBox
,這個沒問題,很快就裝好了,然后Kivy官方制作了該虛擬機的映像(很體貼),下載后就直接能運行了,省去不少麻煩。下載地址,或者直接去官網(wǎng)下載:
下載并解壓之后,打開VB并載入該文件夾下的虛擬機文件,然后運行(登錄密碼kivy):
進入到該系統(tǒng)中之后,就需要開始配置環(huán)境。官方指導
首先我們先在該系統(tǒng)中添加一個共享文件夾,這樣可以和windows共享文件,在VB的設備->共享文件夾選項中有配置:
然后我們使用固定分配,在windows下某個路徑新建一個文件夾后將其選擇為共享文件夾,并選擇自動掛載:
然后重新啟動虛擬機就可以訪問該共享文件夾了:
設置好了共享文件夾后,可以將之前寫的測試程序main.py
拷貝到該文件夾,然后在虛擬機中拷貝到桌面?zhèn)溆谩?/p>
然后打開終端(cd到桌面),執(zhí)行buildozer init
命令,之后會在桌面上生成buildozer.spec
的配置文件:
然后使用命令gedit buildozer.spec
來編輯該文件,(如果沒有g(shù)edit可以sudo apt-get install gedit
來安裝)
基本不用改什么,那個source.dir 需要注意,這是剛剛我們放在桌面上的main.py
的路徑。
然后運行buildozer android_new debug
,接著就開始下載很多東西了,例如Android SDK
,Android NDK
之類,并且是需要訪問外網(wǎng)的,自搭梯子。這個過程要很久,讓我一度以為出了問題,然后我中午睡一覺起來就差不多了^^。
然后在它自動下載配置之后就會在桌面的bin
文件夾下面生成了apk
文件,可以安裝在手機上試一下。
然后基本流程大概如此^^,詳細可以去官網(wǎng)了解,我就是按照官網(wǎng)的步驟完成的。
最后再推薦一個MIT開發(fā)的快速制作安卓app的網(wǎng)站,http://appinventor.mit.edu/explore/
相關(guān)文章
PySide2出現(xiàn)“ImportError: DLL load failed: 找不到指定的模塊”的問題及解決方法
這篇文章主要介紹了PySide2出現(xiàn)“ImportError: DLL load failed: 找不到指定的模塊”的問題及解決方法,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2020-06-06python調(diào)用matlab的m自定義函數(shù)方法
今天小編就為大家分享一篇python調(diào)用matlab的m自定義函數(shù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-02-02Python numpy有哪些常用數(shù)據(jù)類型
Numpy提供了兩種基本的對象:ndarray(N-dimensional Array Object)和 ufunc(Universal Function Object)。ndarray是存儲單一數(shù)據(jù)類型的多維數(shù)組,而ufunc則是能夠?qū)?shù)組進行處理的函數(shù)2023-02-02- 我們知道python只定義了6種數(shù)據(jù)類型,字符串,整數(shù),浮點數(shù),列表,元組,字典。但是C語言中有些字節(jié)型的變量,在python中該如何實現(xiàn)呢?這點頗為重要,特別是要在網(wǎng)絡上進行數(shù)據(jù)傳輸?shù)脑挕?/div> 2014-06-06
Python Pytorch gpu 分析環(huán)境配置
Pytorch是目前最火的深度學習框架之一,目前也支持了pytorch的GPU加速,所以我就想著,在這兩個電腦上裝個Pytorch,這篇文章主要介紹了Python Pytorch(gpu)分析環(huán)境配置,需要的朋友可以參考下2023-04-04對python中raw_input()和input()的用法詳解
下面小編就為大家分享一篇對python中raw_input()和input()的用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04最新評論