python打包apk闪退问题以及美化

本文详细解析了使用Buildozer打包Python应用为APK时遇到的闪退问题及解决方案,包括添加缺失的依赖包如requests和lxml,并配置网络权限。此外,还介绍了如何通过修改buildozer.spec文件来实现应用图标和预加载画面的定制,提升用户体验。

一、闪退问题

在这里插入图片描述

(一)闪退原因

运行出现错误,可以尝试使用源文件在python环境中运行就会发现其错误

(二)解决方法

我此处的错误在于缺失了某些包,
类似于Plaggable的这篇博客
《Buildozer生成的APP闪退+PermissionError故障排除记录》,链接: Buildozer生成的APP闪退+PermissionError故障排除记录.

也是在这篇博客中发现了可能是本来运行时缺少了某些东西(因为自己实在pycharm中编译的,在打包的linux中就没有在试运行了)以及buildozer.spec文件的重要性

buildozer.spec文件内容的具体含义可见
evil-tomato:《使用Buildozer部署Kivy到移动设备上》,
链接: 使用Buildozer部署Kivy到移动设备上.

(三)修改的地方

除了必须要修改的app

# (str) Title of your application 
title = Photos
#(str) Package name 更改2
package.name = photos
# (str) Package domain (needed for android/ios packaging)

title自然不用说了
而package name 和Package domain 是什么了?

就是下面这个东西,其实就是包名,直接在手机中应该是找不到的,因为需要root权限,我这个实在夜神模拟器中找到了,因为自带root
在这里插入图片描述
进入是会询问权限问题
在这里插入图片描述
一般是用不上,只有在调试的时候需要拥有这个权限,只有这样才能使用adb命令进入根目录(具体的我没有实测,因为是在模拟器上完成的,不过之前试图修改过系统证书,发现大部分涉及安卓调试的都是需要root权限的)
将之前缺失的requests以及lxml添加进去后即可

# (list) Application requirements 更改4
requirements =python3,kivy,requests,lxml,

然后是网络权限

# (list) Permissions
android.permissions = INTERNET

二、美化问题

美化其实就是将图标以及导入的图片换掉

# (str) Presplash of the application
presplash.filename = %(source.dir)s/hourse.png

# (str) Icon of the application
icon.filename = %(source.dir)s/title.png

均为512*512格式的png图片

(一)打包后的图标

在这里插入图片描述
第三个first_movie就是更换图标后的app

(二)运行界面

在这里插入图片描述

三、完整的buildozer.spec文件

修改的地方就是上述地方

[app]

# (str) Title of your application
title = first_movie

# (str) Package name
package.name = requests_first_movie

# (str) Package domain (needed for android/ios packaging)
package.domain = org.kivydev

# (str) Source code where the main.py live
source.d
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值