用于android打包
1.安装Ubuntu子系统
- 在 设置 =》更新和安全 =》开发者选项 中启用 开发人员模式。
- 在[控制面板>]程序和功能 >启用或关闭Windows功能:勾选适用于Linux的Windows子系统,确定,重启电脑。
- 在应用商店安装ubuntu
2.初始化
2.1 设置用户名和密码
安装好之后打开,会提示Installing, this may take a few minutes…。一会之后会提示输入用户名:
设置好用户名之后,提示输入密码,输入密码时屏幕上没有任何动静,但是已经输入了,不用管。输入一次之后会提示再输入一次。输入完之后即可使用。
2.2 换源
2.2.1修改sources.list文件
文件为:C:\Users\【用户】\AppData\ Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\etc\apt\ sources.list
在文件中将国内的源添加上去,可以直接用 notepad++ 修改,记事本应该也可以。
2.2.2 查看Ubuntu版本,选择合适的源。
下面3个命令前两个任选一个就可以
# 简单
cat /etc/issue
# 具体
cat /etc/lsb-release
# 内核
uname -a
2.2.3 选择源
清华源地址https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/
选择合适的版本将sources.list内容替换掉
我适用的:
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
2.2.4 更新源
换好源之后要进行更新。“sudo” 是以管理员权限运行,输入如下命令:
sudo apt-get update
sudo apt-get upgrade
中间遇到选择的都选 是。
3安装中文环境
#安装中文语言包
sudo apt install -y language-pack-zh-hans language-pack-zh-hans-base
设置中文环境变量 ,在 \rootfs\home\mm123文件夹下有个 .profile 文件,在给文件末尾新增一行 LANG=zh_CN.UTF-8
设置完毕重新打开ubuntu即可,部分软件及命令不支持汉化以ls命令为例。
4 配置python和pip
要使用的python版本是3.X,所以在系统中应用 python3而不是 python 。
本子系统自带安装的python版本是python3.6.5,默认没有安装pip包管理器。安装pip时注意是python3-pip不是python-pip。
# 输入 python3 查看python是否已安装
python3
# 在python中输入exit()退出python
exit()
# 安装pip
sudo apt install python3-pip
pip换源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
5 配置开发环境
#unzip是否安装,若未安装,输入下面命令安装
sudo apt install unzip
# 安装 kivy,若给命令出错,提示路径非当前用户所有,可以在命令前加 “sudo”
pip3 install kivy
pip3 install Cython
# 安装 buildozer
pip3 install buildozer
# 不知道是啥
sudo apt-get install zlib1g-dev
# 安装 Java compiler (javac)
sudo apt install openjdk-8-jdk-headless
# 切换到main.py文件所在目录
cd /mnt/c/Users/用户名/Documents/GitHub/工作文件夹
#生成一个.spec文件,里面是app的各种信息
buildozer init
# 编译
buildozer android debug deploy run
故障
将buildozer.spec文件中的log_level =设为2。在win10系统里新建和删除ubuntu系统文件夹内的文件和文件夹会无效,Ubuntu系统检测不到,最好把文件放在其他位置,用 **/mnt/c/Users/bmzk1/Documents/类似形式路径引用。
1.不能从github下载python-for-android,然后解压
解决办法:自己下载,在buildozer.spec文件中把p4a.source_dir =**设为python-for-android解压目录
问题2:sdk-tools-linux-4333796.zip解压错误
解决办法:
6 其他命令
ls -4