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

使用Python for Android部署Django应用启动崩溃:SQLite3后端不可用

解决Django在Python for Android中sqlite3后端不可用的问题

1. 补充sqlite依赖到构建脚本

修改你的build.sh中的--requirements参数,添加sqlite(Python for Android的sqlite组件recipe),确保构建时包含sqlite3模块:

--requirements=python3,hostpython3,django,asgiref,sqlparse,pytz,sqlite

2. 确认Django数据库配置正确性

检查项目settings.py中的数据库配置,确保使用标准的sqlite3配置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

3. 调整数据库路径到Android可访问目录

Android应用对文件系统的访问权限有限,将数据库文件路径改为应用私有目录:

import os
from pathlib import Path

# 获取Android应用私有目录路径
BASE_DIR = Path(os.environ.get('ANDROID_PRIVATE', '.'))

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

4. 重新构建APK

清理旧构建缓存后重新执行构建脚本:

p4a clean
./build.sh

额外排查建议

  • 切换NDK版本:尝试使用NDK 23.x版本,部分高版本NDK与Python for Android兼容性不佳。
  • 使用Django LTS版本:优先选择Django 3.2或4.2等长期支持版本,兼容性更稳定。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 20:45:34