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

Kivy使用pandas读取CSV文件 打包APK在Android运行时提示文件不存在怎么办

解决方案

核心问题原因:安卓应用运行时的默认工作目录并非应用资源的存放目录,直接使用相对路径无法定位到打包进APK的文件,必须构造绝对路径访问,同时要确保CSV文件被正确打包到APK的资源目录中。

1. 校验打包配置

若使用Buildozer工具编译APK,打开项目根目录的buildozer.spec文件,调整以下配置确保CSV文件被纳入打包范围:

  • 单独引入指定CSV文件,修改source.include_files配置项:
    source.include_files = canais_cgepb.csv
  • 批量引入所有CSV格式文件,修改source.include_exts配置项,将csv加入允许的后缀列表:
    source.include_exts = py,png,jpg,kv,atlas,csv
    配置修改完成后保存,重新编译APK生效。

2. 修改文件读取逻辑

代码中需要先获取当前脚本所在的绝对路径,再拼接CSV文件名构造完整访问路径,修改后的代码如下:

import os
def set_dataset(self):
    # 获取当前脚本所在目录的绝对路径
    current_dir = os.path.dirname(os.path.abspath(__file__))
    # 拼接得到CSV文件的完整路径
    csv_full_path = os.path.join(current_dir, 'canais_cgepb.csv')
    cgpb = pd.read_csv(csv_full_path, decimal=',')
    self.dataset = cgpb

上述方法同时兼容本地开发环境和安卓端运行场景,不需要额外适配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 10:54:01