kivy/buildozer打包

1. 准备一台能访问Internet的主机(debian),并且配置文件服务器,然后上传代码

2. 安装docker(顺序执行以下命令)

apt-get update

apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

apt-get update

apt-cache policy docker-ce        #列出匹配版本的docker-ce

apt-get install docker-ce

systemctl status docker        #检查docker是否运行

3. 搜索docker镜像

docker search buildozer

NAME                            DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
kivy/buildozer                  Generic Python packager for Android and iOS …   12                                      
jedie/buildozer                 Create Andorid .apk for kivy apps with build…   2                                       
boringbox/buildozer             Kivy buildozer                                  1                                       [OK]
rubygem/buildozer               Auto-Generated Image for Ruby Gem buildozer     0                                       [OK]
buildozer/cache-control-proxy                                                   0                                       
buildozer/geminabox             Dockerized Gem in a Box server                  0                                       [OK]
tshirtman/buildozer             a docker image to build android apps from ki…   0                                       [OK]
buildozer/squid                                                                 0                                       
brvier/buildozer                Buildozer batteries included image for build…   0                                       
buildozer/webdav                Simple WebDAV container for development purp…   0                                       
lordjabez/buildozer             Image for using buildozer to create Android …   0                                       
homdx/buildozer                 buildozer                                       0                                       [OK]
buildozer/mailhog                                                               0                                       
unsuitable001/buildozer3         A docker container for using Buildozer with…   0                                       
datalife/buildozer-tryvy        Tryvy buildozer docker image                    0                                       
buildozer/redis                 Redis Server                                    0                                       
olymk2/buildozer                                                                0                                       
adin234/buildozer-gfortran      Buildozer with gfortran for arm64 devices       0                                       
tom333/buildozer_actions                                                        0                                       
wwstory/buildozer               Build kivy android app out of the box           0                                       
kmocypress/buildozer            Fixed up buildozer dockerfile based on https…   0                                       
tuna42/buildozer_test                                                           0                                       
gutentag917/buildozer                                                           0                                       
fragaliano/buildozer                                                            0                                       
baykier/buildozer                                                               0                                       

这里选择kivy/buildozer镜像

4. 下载镜像

docker pull kivy/buildozer

docker images                        #列出本地镜像

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
kivy/buildozer      latest              1d7a68c5b814        19 months ago       1.14GB

5. 运行容器

docker run -itd --name buildozer --privileged=true --volume "$PWD":/home/user/hostcwd --entrypoint /bin/bash kivy/buildozer

docker ps                                #列出当前运行的容器

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
88cd479473e7        kivy/buildozer      "/bin/bash"         49 seconds ago      Up 48 seconds                           buildozer

docker exec -it buildozer /bin/bash                #运行容器

python3 -m pip install --upgrade pip

6. 打包

pip install buildozer

pip install -i https://mirrors.aliyun.com/pypi/simple/ buildozer        #国内

sudo apt-get install git

pip install cython

pip install -i https://mirrors.aliyun.com/pypi/simple/ cython        #国内

sudo apt-get install openjdk-11-jdk

修改 python的安装目录/site-packages/buildozer/targets/android.py

#62行:
#p4a_fork = 'kivy'        #国外
p4a_fork = 'mirrors'      #国内

#730行:
#'app', 'p4a.url', f'https://github.com/{p4a_fork}/python-for-android.git'
'app', 'p4a.url', f'https://gitee.com/{p4a_fork}/python-for-android.git'

sudo apt-get install autoconf automake libtool

sudo apt-get install libffi-dev

进入python源代码文件夹

buildozer init

#102行:
#android.api = 27
android.api = 33

buildozer android debug

如果在打包过程中发现下载失败,可以进入虚拟环境中自行安装,例如下面的虚拟环境:

~/kivy-proj/ex1/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build$ source venv/bin/activate

打包成功会在bin文件夹中生成一个apk文件 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ubuntu Kivy Buildozer打包是一种在Ubuntu操作系统上使用KivyBuildozer工具进行应用程序打包的过程。 首先,我们需要确保在Ubuntu上已经安装了KivyBuildozerKivy是一个用于开发移动应用程序的Python框架,而Buildozer是一个用于将Python程序打包成Android和iOS应用程序的工具。 安装KivyBuildozer后,我们需要进行一些准备工作。首先,我们需要在Ubuntu上安装一些依赖项,如Python开发包、Java开发包和Android SDK。然后,我们需要配置Buildozer的配置文件,以便指定应用程序的名称、版本等。 一旦准备就绪,我们可以使用Buildozer命令行工具来打包我们的应用程序。首先,我们需要进入到包含我们的应用程序代码的目录中。然后,我们可以使用以下命令运行Buildozerbuildozer android debug 这个命令将使用Buildozer工具来构建一个调试版本的Android应用程序。Buildozer将使用我们之前在配置文件中指定的信息来构建应用程序。此过程可能需要一些时间,因为Buildozer将自动下载构建所需的库和依赖项。 完成构建后,我们可以在Buildozer指定的输出目录中找到生成的APK文件。该文件可以在Android设备上安装和运行。 总的来说,利用Ubuntu Kivy Buildozer打包应用程序是一个相对简单而又方便的过程。借助KivyBuildozer这两个强大的工具,我们可以轻松地将我们的Python应用程序打包成Android应用程序,并在移动设备上进行测试和发布。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值