python 开发android APP 简单小结

本文详细介绍了在CentOS 7.4环境下使用Python 3.6安装Kivy的过程,包括更新pip、setuptools、virtualenv,以及安装依赖和Kivy本身的方法。通过示例代码展示了如何创建一个简单的HelloWorld应用,并提供了使用Buildozer和python-for-android两种方式将应用打包为Android APK的步骤。

参考https://blog.youkuaiyun.com/qq_19582693/article/details/100598710

一、kivy安装

环境:python3.6、centos7.4

官网下载安装:https://kivy.org/#download 

官网教程pdf:链接:https://pan.baidu.com/s/1TRvn034FJ2O1oi_qA2d22w  提取码:olbj

以linux为例,https://kivy.org/doc/stable/installation/installation-linux.html

更新 pip,setuptools,virtualenv
python -m pip install --upgrade --user pip setuptools virtualenv
激活虚拟环境(可选)
python -m virtualenv ~/kivy_venv
source ~/kivy_venv/bin/activate

安装依赖(教程这么写的)
python -m pip install docutils pygmentspypiwin32 kivy.deps.sdl2 kivy.deps.glew
kivy.deps.gstreamer --extra-index-url https://kivy.org/downloads/packages/simple/

安装kivy
python -m pip install kivy
python -m pip install kivy_examples

python -m pip install ffpyplayer
在运行应用程序之前,请确保设置KIVY_VIDEO = ffpyplayer env变量。仅支持Python 3.5+。

二、 测试hello world

按教程,新建py文件测试。

代码如下:

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.label import Label
from kivy.uix.textinput import TextInput


class LoginScreen(GridLayout):
    def __init__(self, **kwargs):
        super(LoginScreen, self).__init__(**kwargs)
        self.cols = 2
        self.add_widget(Label(text='User Name'))
        self.username = TextInput(multiline=False)
        self.add_widget(self.username)
        self.add_widget(Label(text='password'))
        self.password = TextInput(password=True, multiline=False)
        self.add_widget(self.password)


class UsernameApp(App):
    def build(self):
        return LoginScreen()


if __name__ == '__main__':
    UsernameApp().run()

三、打包app

https://kivy.org/doc/stable/guide/packaging-android.html

1、Buildozer方式

安装Buildozer:https://github.com/kivy/buildozer.git

git clone https://github.com/kivy/buildozer.git
cd buildozer
sudo python setup.py install

进入项目目录,初始化 Buildozer

buildozer init

会生成buildozer.spec文件,buildozer.spec 配置参数详解:https://buildozer.readthedocs.io/en/latest/specifications.html

至少修改这三项
# (str) Title of your applicationtitle = helloworld
# (str) Package namepackage.name = helloapp
# (str) Package domain (needed for android/ios packaging)package.domain = youer.com

安装buildozer的依赖项https://buildozer.readthedocs.io/en/latest/installation.html#targeting-android

首先,使用以下命令安装buildozer项目:

pip3 install --user --upgrade buildozer

Android在Ubuntu 20.04(64bit)上
(预期在以后的版本中也能正常工作,但仅在最新的LTS中进行定期测试)

sudo apt update
sudo apt install -y git zip unzip openjdk-8-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
pip3 install --user --upgrade Cython==0.29.19 virtualenv  # the --user should be removed if you do this in a venv

# add the following line at the end of your ~/.bashrc file
export PATH=$PATH:~/.local/bin/

启动调试版本:在bin 目录中有一个APK文件。

buildozer -v android debug

或者,在设备上构建,推送和自动运行apk。

buildozer android debug deploy run

2、python-for-android 

3、kivy Launcher

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值