You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows端Ubuntu使用Buildozer编译的Kivy应用在三星手机无法运行

问题排查及解决方案

1 优先排查配置错误

  • 权限缺失:你的配置中android.permissions = INTERNET处于注释状态,你用到的yagmail、firebase_admin、kivmob都需要联网权限,没有权限会导致库初始化直接崩溃,取消该行注释即可。
  • 架构不兼容:你当前配置指定编译架构为armeabi-v7a(32位ARM),近年发布的三星手机基本仅支持64位架构arm64-v8a,将配置中的android.arch = armeabi-v7a改为android.arch = arm64-v8a重新编译即可。

2 常见逻辑兼容问题

  • 文件路径错误:安卓应用的工作目录和桌面端不同,你如果在代码中写死了相对路径读取json、txt文件,安卓环境下会找不到文件触发异常闪退。需要通过Kivy提供的工具动态获取路径:
from kivy.utils import platform
from kivy.app import App
import os

if platform == 'android':
    # 安卓环境下的资源路径/用户数据路径
    res_dir = App.get_running_app().user_data_dir
else:
    # 桌面端路径
    res_dir = './'
# 读取文件时拼接路径
config_path = os.path.join(res_dir, '你的配置文件.json')
  • 依赖库兼容问题:firebase_admin、yagmail这类库默认适配桌面/服务端环境,安卓端运行可能缺少依赖或者初始化逻辑不兼容:
    • 确认所有依赖都有python-for-android的编译支持,没有的话需要自行编写编译规则
    • kivmob需要额外配置安卓广告相关的gradle依赖和权限,检查是否漏加对应配置

3 精准定位问题方法

开启手机的USB调试,连接到编译环境后,运行以下命令抓取应用运行时的Python报错日志:
adb logcat -s python
运行APP即可看到具体的崩溃栈,直接定位到出错的代码行。

内容的提问来源于stack exchange,提问作者Karo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 06:24:00