目前Android中比较流行的图库选择器,还有文件选择器的开源库有哪些,哪些是多年没更新的,哪些是经常有更新的。
我给你整理一份当前(2024--2026)Android 常见图库/文件选择器开源库全景,并重点区分:
- ✅ 主流/仍活跃更新
- ⚠️ 基本停更/不推荐新项目
- 🔥 新趋势(官方/Compose/KMP)
同时我会结合你做 Android 开发(偏底层+性能)给出实际选型建议。
一、目前最主流的图库选择器(Image / Media Picker)
✅ 1. PictureSelector(强烈推荐)
定位:国内外都很常用的"全功能"图库选择器
特点
- 图片 / 视频 / 音频 全支持
- 裁剪(uCrop)+ 压缩 + CameraX
- 多选 / 预览 / 自定义 UI
- 适配 Android 5.0+
- 持续更新(3.x 版本仍在维护)
结论
👉 目前最成熟、功能最全的三方图库库之一
⚠️ 2. android-image-picker
曾经很火,但已经凉了
- GitHub 已在 2025 年归档(停止维护)
- 不再接受更新
👉 新项目不要用
⚠️ 3. Android-FilePicker
早期常用,但现在问题很多
- 依赖
jCenter(已废弃) - scoped storage 兼容问题严重
- Android 11+ 不可靠
👉 基本属于历史遗留库
🆕 4. ImagePickerAndroid
比较新的轻量方案
特点
- 支持 Compose + XML
- 支持 Base64、压缩等
- Kotlin 新版本支持(Kotlin 2.x)
👉 适合:
- 轻量需求
- 不想引入大而全库
🆕 5. ImagePickerKMP
趋势型(KMP 跨平台)
特点
- Android + iOS + Web
- Compose Multiplatform
- 内置裁剪 / 压缩 / EXIF
👉 适合:
- 想做 跨平台统一代码
🧠 官方趋势(非常重要)
🔥 6. Android Photo Picker(未来主流)
Google 官方推荐:
- 不需要存储权限
- 符合 Google Play 政策
- Compose / View 都支持
👉 趋势:
- 以后所有 App 都要优先用它
- 第三方库很多其实在"包装它"
二、文件选择器(File Picker)
✅ 1. FilePicker(推荐)
比较新的全能文件选择器
特点
- 图片 / 视频 / 文档 / 相机
- ActivityResult API
- Kotlin + Jetpack 现代写法
- 最近仍在更新(2025 还有 release)
👉 推荐指数:⭐⭐⭐⭐⭐
🆕 2. ComposeFilePicker
专门给 Compose 用
- 支持所有文件类型
- 自动适配 Android 11+ Photo Picker
- UI 可定制
👉 Compose 项目优先考虑
⚠️ 3. EasyMediaPicker
- 功能全(图片/视频/文件)
- 但社区不活跃
- 设计较旧
👉 可用但不推荐新项目
三、总结:哪些活跃?哪些凉了?
✅ 持续更新 / 推荐
| 库 | 状态 |
|---|---|
| PictureSelector | ⭐⭐⭐⭐⭐(最成熟) |
| FilePicker(ChochaNaresh) | ⭐⭐⭐⭐ |
| ComposeFilePicker | ⭐⭐⭐⭐(新) |
| ImagePickerAndroid | ⭐⭐⭐(轻量) |
| ImagePickerKMP | ⭐⭐⭐⭐(趋势) |
| Android Photo Picker(官方) | ⭐⭐⭐⭐⭐(未来) |
⚠️ 已过时 / 不推荐
| 库 | 问题 |
|---|---|
| android-image-picker(esafirm) | ❌ 已归档 |
| Android-FilePicker(DroidNinja) | ❌ jCenter + 兼容问题 |
| ChiliPhotoPicker | ❌ 多年未更新 |
四、给你的实际选型建议(重点)
你是做 Android + 音视频 + 性能优化,我直接给你最实用建议:
🎯 场景 1:普通 App(推荐)
👉 PictureSelector + 官方 Photo Picker
- 兼容老设备 → PictureSelector
- 新设备 → Photo Picker
🎯 场景 2:极致性能 / 自己处理 YUV
👉 不要用第三方 UI picker
直接用:
ACTION_OPEN_DOCUMENTMediaStorePhoto Picker
👉 原因:
- 三方库 = UI + IO + Bitmap decode(你用不上)
- 你要的是 原始数据流
🎯 场景 3:Compose 项目
👉 选:
- ComposeFilePicker
- 或官方 Photo Picker
🎯 场景 4:跨平台(未来趋势)
👉 ImagePickerKMP
五、一个重要趋势(你必须知道)
👉 Google 正在"强推":
- Photo Picker(无权限)
- 限制
READ_MEDIA_*
👉 Reddit 开发者反馈:
使用旧权限可能被 Play Store 拒绝
六、结论(一句话)
👉 现在的方向已经很明确:
- 旧库:逐渐淘汰
- 新项目:
优先用官方 Photo Picker + 少量增强库
如果你要更深入
我可以帮你整理一份:
👉「从系统 API 到自定义 picker(含 YUV/视频流)完整方案」
或者帮你选:
👉「适合你当前 IM/视频监控项目的最优方案」