常见报错与解决办法
按现象收拢 pydroid3 的高频问题:装不上、import 失败、图不弹、后台任务被杀,以及内置解释器版本怎么确认。相关文档:手机上写Python的环境怎么搭.md · pip装库与镜像源配置.md · 图形界面与matplotlib画图.md
一、装不上:应用未安装 / 解析包出现问题
第一嫌疑是 CPU 架构对不上:APK 按 CPU 架构分开打包(arm64-v8a、x86_64 等),版本号后面的后缀就是架构。安卓模拟器与 Intel / AMD 处理器的设备用 x86_64 构建,主流实体手机是 arm64——把 x86_64 的包装到 arm64 手机上,系统会直接拒绝。
判断自己设备的架构:
- 实体手机:装一个 CPU 信息类工具(如 CPU-Z、DevCheck),看
ABI一项; - 连电脑后执行
adb shell getprop ro.product.cpu.abi; - 模拟器:看设备配置,主流安卓模拟器默认多为 x86_64。
排除了架构还装不上,按顺序检查:安装包是否下载完整;之前是否装过别的来源的同包名版本(同包名只能存在一份,先卸载再装);内置存储剩余空间是否够(至少 250 MB)。
二、import 报 ModuleNotFoundError
按顺序核对:
- 库真装上了吗——在终端
pip list看一眼有没有它; - 名字对不对——装的名字和 import 的名字经常不一样(装
beautifulsoup4、import 的是bs4;装pillow、import 的是PIL); - 都对还是报错——重启 pydroid3 再试,个别库要重启后才被识别。
报错里带 dlopen failed: library "xxx.so" not found 的另算:说明这个库要加载一个 Android 系统里不存在的原生库(典型如 pyttsx3),先搜「库名 + Android」确认有没有可用的替代实现,别反复重装指望它自己好。
三、图弹不出来 / 程序像卡住
matplotlib 默认按 GUI 模式跑,弹窗等图是正常行为,关掉图窗口程序就会继续;反过来只想看终端输出不弹图,在文件里加 #Pydroid run terminal。各类图形程序的写法见图形界面与matplotlib画图.md。
四、内置的 Python 是什么版本
在解释器或脚本里跑一行就知道:
import sys
print(sys.version)
不同时期、不同渠道的安装包内置版本可能不同(应用介绍里长期写 Python 3.8,较新的更新日志提到了 3.13 系列),以设备上这行命令的输出为准,别照抄教程里的版本号去装库。
五、跑长任务时被系统杀掉
Android 对后台应用限制严格,长时间计算或挂着的服务中途消失,一般是系统省电机制干的。三道措施一起做:
- 把 pydroid3 从电池优化里放行(设置 → 应用 → 电池);
- 任务期间保持屏幕亮着;
- 在应用自己的设置里关掉「不在使用时暂停」一类的省电开关。
六、iOS 上有个同名应用,别认错
App Store 上另有一个同名「Pydroid 3」,与这里说的 Android 版(开发者 IIEC,包名 ru.iiec.pydroid3)不是同一家产品,搜资料时认准包名。安卓侧的功能速览与资源入口整理在 pydroid3 介绍站;环境搭建与架构判断从手机上写Python的环境怎么搭.md看起。