最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何使用Python打包APK

 更新時(shí)間:2024年02月21日 09:34:55   作者:羅五十  
這篇文章主要介紹了Linux環(huán)境下的Python打包和部署實(shí)踐的相關(guān)資料,需要的朋友可以參考下

之前偶爾接觸到了python開發(fā)app的工具kivy(也能開發(fā)windows/linux/mac應(yīng)用),然后發(fā)現(xiàn)網(wǎng)上教程極少,甚至第一步打包apk就勸退了很多人,我也踩了很多坑,最后還是一一解決了,這里寫個(gè)文章記錄下。

我選擇用buidlozer打包apk,主要參考官方文檔:https://buildozer.readthedocs.io/en/latest/installation.html

從文檔上看,這個(gè)工具主要是在linux和macos上用,我這邊主要用windows,所以我選擇用虛擬機(jī)來搭建打包環(huán)境。
整個(gè)搭建過程錄頻傳到b站上了,供參考python安卓開發(fā)——kivy打包安卓APK逐步教學(xué)

一、準(zhǔn)備linux環(huán)境和相關(guān)工具

這里直接VMware+Ubuntu20.04解決環(huán)境問題,這一有個(gè)坑,一定要用18以上的ubuntu,否則可能因?yàn)閛penssl版本導(dǎo)致后續(xù)步驟失敗。如何安裝虛擬機(jī)和在虛擬機(jī)上安裝系統(tǒng)就不贅述了,一般按照安裝引導(dǎo)就ok。

安裝完成后為了后續(xù)方便使用,建議安裝以下兩個(gè)工具:

  1. openssl-server(linux)+Mobaxterm(windows)。ssh登錄linux,方便windows下貼命令,否則的話需要安裝vmware-tools,但是感覺這個(gè)不太好用。另外也可以通過這個(gè)來在虛擬機(jī)和windows間傳輸文件。這個(gè)配置也簡(jiǎn)單,直接sudo apt install openssl-server即可
  2. samba。linux上配置samba方便共享文件,這樣windows可以直接添加網(wǎng)絡(luò)位置,可以方便地在windows上編輯文件并在linux編譯運(yùn)行。可參考博文【詳細(xì)步驟】Ubuntu安裝Samba服務(wù)及配置共享文件夾進(jìn)行配置

二、準(zhǔn)備python環(huán)境

官方文檔說的需要3.8以上版本,因此我也就直接用3.8了。
為了后續(xù)方便,還是用conda來管理python環(huán)境,我這里用的miniconda,因?yàn)槲募∫恍?,所需要的功能也都有?/p>

conda create -n kivy python=3.8
source activate kivy
pip install kivy

然后把我們?cè)趙indows下寫的程序傳到虛擬機(jī)里面,代碼是一段簡(jiǎn)單的demo如下,python ./main驗(yàn)證ok

from kivy.app import App
from kivy.uix.button import Button
 
class TestApp(App):
    def build(self):
        return Button(text='iPaoMi')
 
TestApp().run()

在這里插入圖片描述

三、buildozer打包apk

在工程目錄下,執(zhí)行以下命令

3.1 初始化

在工程目錄下執(zhí)行buildozer init,會(huì)生成一個(gè).spec配置文件,內(nèi)容可以自己看看,包括App名稱等,這里我也沒有仔細(xì)研究。

3.2 buildozer -v android debug

接下來是個(gè)巨坑,官方文檔上說明是執(zhí)行buildozer -v android debug,如果你是初次運(yùn)行,就可以去泡一杯咖啡了。因?yàn)檫@個(gè)過程中會(huì)自動(dòng)下載SDK/NDK等內(nèi)容。

然后第一個(gè)坑就來了,如果你是ubuntu16,那么大概跑了十幾分鐘后會(huì)失敗,提示ssl之類的錯(cuò)誤。
其實(shí)這里并不需要魔法,可以正常下載,原因就在ubuntu的ssl版本。
SDK里面用的python3.10.10,要求openssl版本大于1.1.1
如果你愿意折騰,可以試試升級(jí)一下是否能解決這個(gè)問題,但我建議直接用ubuntu20.04,按官方文檔來。

然后是第二個(gè)坑,如果下載過程中網(wǎng)絡(luò)波動(dòng)導(dǎo)致失敗,重新嘗試下載時(shí),會(huì)提示文件已存在,或者是某某工具找不到
因?yàn)橹跋螺d未完成但是可能文件已經(jīng)存在,這將影響工具對(duì)下載狀態(tài)的判斷,需要?jiǎng)h除工程目錄下的.buildozer文件夾和用戶目錄下的.buildozer文件夾

然后是第三個(gè)坑,下了十幾分鐘文件后,有一個(gè)文件無法下載,看域名確實(shí)是需要魔法才能下載,但是這并不意味著我們需要這個(gè)文件
重新執(zhí)行之前的命令,發(fā)現(xiàn)沒有出現(xiàn)前面的問題,開始正式編譯了,最終生成目錄bin,并在其下能找到apk文件。

四、驗(yàn)證

這里沒有像官方文檔中建議那樣直接用USB調(diào)試,而是簡(jiǎn)單的將APK文件拖入安卓模擬器驗(yàn)證,執(zhí)行ok。


在這里插入圖片描述

后續(xù)修改代碼內(nèi)容重新編譯,大約只需要半分鐘即可打包完成。也就是第一次使用比較困難。

到此這篇關(guān)于如何使用Python打包APK的文章就介紹到這了,更多相關(guān)Python打包APK內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • windows、linux下打包Python3程序詳細(xì)方法

    windows、linux下打包Python3程序詳細(xì)方法

    這篇文章主要介紹了windows、linux下打包Python3程序詳細(xì)方法,需要的朋友可以參考下
    2020-03-03
  • pandas檢查和填充缺失值的N種方法總結(jié)

    pandas檢查和填充缺失值的N種方法總結(jié)

    本文主要介紹了pandas檢查和填充缺失值的N種方法總結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 使用Python實(shí)現(xiàn)自動(dòng)創(chuàng)建Excel折線圖

    使用Python實(shí)現(xiàn)自動(dòng)創(chuàng)建Excel折線圖

    在數(shù)據(jù)分析,財(cái)務(wù)報(bào)告和市場(chǎng)研究中,折線圖能夠清晰地呈現(xiàn)數(shù)據(jù)的波動(dòng)模式和增長(zhǎng)趨勢(shì),本文小編就和大家介紹一下如何使用 Python 在 Excel 工作簿中創(chuàng)建折線圖并對(duì)其進(jìn)行各種自定義設(shè)置吧
    2026-05-05
  • Windows 64位下python3安裝nltk模塊

    Windows 64位下python3安裝nltk模塊

    這篇文章主要為大家詳細(xì)介紹了Windows 64位下python3安裝nltk模塊,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • 詳解Python中的循環(huán)語句的用法

    詳解Python中的循環(huán)語句的用法

    這篇文章主要介紹了詳解Python中的循環(huán)語句的用法,循環(huán)語句是學(xué)習(xí)各個(gè)編程語言的最基本的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-04-04
  • 利用Python實(shí)現(xiàn)無損GIF動(dòng)圖的制作

    利用Python實(shí)現(xiàn)無損GIF動(dòng)圖的制作

    這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)無損GIF動(dòng)圖的制作,文中的實(shí)現(xiàn)方法講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-04-04
  • Python基于Floyd算法求解最短路徑距離問題實(shí)例詳解

    Python基于Floyd算法求解最短路徑距離問題實(shí)例詳解

    這篇文章主要介紹了Python基于Floyd算法求解最短路徑距離問題,結(jié)合完整實(shí)例形式詳細(xì)分析了Python使用Floyd算法求解最短路徑距離問題的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2018-05-05
  • Python ET.parse 模塊功能詳解

    Python ET.parse 模塊功能詳解

    xml.etree.ElementTree(通常簡(jiǎn)稱為 ET)是Python標(biāo)準(zhǔn)庫中用于解析和創(chuàng)建XML數(shù)據(jù)的模塊,本文給大家介紹Python ET.parse 模塊功能,感興趣的朋友跟隨小編一起看看吧
    2026-02-02
  • python 遍歷列表提取下標(biāo)和值的實(shí)例

    python 遍歷列表提取下標(biāo)和值的實(shí)例

    今天小編就為大家分享一篇python 遍歷列表提取下標(biāo)和值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python求解排列中的逆序數(shù)個(gè)數(shù)實(shí)例

    Python求解排列中的逆序數(shù)個(gè)數(shù)實(shí)例

    這篇文章主要介紹了Python求解排列中的逆序數(shù)個(gè)數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05

最新評(píng)論

平昌县| 铁岭市| 宜城市| 闻喜县| 弥渡县| 镇宁| 吉隆县| 宝山区| 靖边县| 邵武市| 海盐县| 邹平县| 肇源县| 宁阳县| 琼结县| 张掖市| 冀州市| 龙江县| 青河县| 阿克| 贞丰县| 隆子县| 尤溪县| 莱州市| 清远市| 遂川县| 保山市| 上犹县| 平遥县| 隆尧县| 宁德市| 青铜峡市| 江山市| 汪清县| 宜川县| 富川| 宿松县| 惠安县| 兰州市| 饶阳县| 皋兰县|