一、闪退问题

(一)闪退原因
运行出现错误,可以尝试使用源文件在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

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

被折叠的 条评论
为什么被折叠?



