搜尋套件、儲存庫與 APP 分類

套件詳情v2.1.2

android_file_picker

檔案選擇外掛的 Android 实作,支援檔案選取、儲存以及儲存空間存取架構 (SAF) URI 權限。

Android
近 30 天下載
123萬
喜歡數
1
Pub 分數
150

安裝套件

flutter pub add android_file_picker

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

一個 Flutter 插件,提供 Android 專有的檔案選擇、儲存與儲存空間存取架構(SAF)URI 授權功能。它讓使用者能透過原生 Android 檔案選擇器選取檔案與資料夾,使用 SAF 安全管理檔案存取,並以正確權限儲存檔案。設計為廣泛 file_picker 插件的實作,確保與 Android 儲存模型及現代安全實務相容。適合需要在 Android 裝置上進行強大檔案操作的應用程式。

適用情境

  • 從設備存儲中選擇檔案
  • 使用 SAF 儲存檔案
  • 透過 URI 授予暫時檔案存取權限
  • 與 Android 儲存系統的整合
  • 處理大檔案傳輸
  • 支援外部儲存裝置

主要特色

  • 僅限 Android 的檔案選擇
  • SAF URI 授權支援
  • 安全的文件存取管理
  • 與原生 Android 檔案選擇器整合
  • 檔案儲存與權限處理
  • 與 file_picker 配合使用時的跨平台一致性

適合對象

  • 專注於 Android 的 Flutter 應用
  • 需要安全檔案存取的應用程式
  • 使用 SAF 進行儲存的開發者
  • 行動應用程式中的檔案管理功能
  • 需要外部儲存支援的應用程式

使用建議

  • 僅限 Android 平台
  • 需要正確的清單權限
  • 依賴於父級 file_picker 套件
  • 可能需要額外的執行時間權限檢查
  • 不適用於 iOS 或 Web
  • SAF 行為在不同 Android 版本中有所差異

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

File Picker

pub package CI pipeline status GitHub issues License Awesome Flutter

File Picker

A Flutter plugin that lets you use the native file explorer to pick single or multiple files, with extension filtering, directory selection, and save-file dialogs, across Android, iOS, Linux, macOS, Windows, and Web.

This repository is a Melos workspace hosting file_picker as a federated plugin: a single cross-platform API package on top of one implementation package per platform, all versioned and published independently.

Packages

Package Pub Description
file_picker pub The main package. Add this to your app, it pulls in the right platform implementation automatically.
file_picker_platform_interface pub The shared interface and data contracts (PlatformFile, FileType, platform option classes) every implementation builds on.
file_picker_darwin pub iOS and macOS implementation.
android_file_picker pub Android implementation, including Storage Access Framework (SAF) support.
file_picker_linux pub Linux implementation, using GTK3 and XDG Desktop Portals.
windows_file_picker pub Windows implementation, using the Win32 COM APIs.
file_picker_web pub Web implementation, including Wasm compilation support.

Almost all apps should only ever depend on file_picker directly. The platform packages are pulled in transitively and registered automatically by Flutter's plugin system; you only reach for one of them directly if you need a platform-specific API that isn't exposed on the shared facade (for example FilePickerDarwin.skipEntitlementsChecks() on macOS).

Quick start

dependencies:
  file_picker: ^13.0.0
import 'package:file_picker/file_picker.dart';

final file = await FilePicker.pickFile();

if (file != null) {
  print(file.name);
  print(await file.length()); // Returns Future<int?> (or use file.lengthSync())
}

See packages/file_picker/README.md for the full feature list, platform compatibility chart, and more usage examples (multiple files, extension filters, directory picking, save-file dialogs).

Migration

  • Upgrading to v13? See the Migrating to v13 Guide for details on PlatformFile.length() returning Future<int?> and the removal of legacy v12-deprecated parameters.
  • Upgrading from pre-v12? See the Migrating to v12 Guide for the federated architecture changes (FilePicker.pickFiles() returning List<PlatformFile>, platform options, and streaming).

Documentation

Contributing

Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request, it covers testing requirements, versioning, and changelog conventions for this workspace.

To work on this repository locally:

dart pub global activate melos
melos bootstrap
melos run analyze   # flutter analyze across every package
melos run test       # flutter test across every package

Each package keeps its own pubspec.yaml and CHANGELOG.md and is released independently, only the package(s) you actually changed need a version bump.

Credits

file_picker was created and maintained by Miguel Ruivo, starting in 2018, growing it from a single Android/iOS plugin into the federated, cross-platform package it is today. This repository continues that work under new ownership, built entirely on the foundation of his years of effort.

Thank you, Miguel.

License

MIT, see LICENSE. Every package in this repository is released under the same license.

所屬分類

依賴

依賴清單 3 項

原始碼儲存庫

使用此套件的專案

暫無相關資料。

所在榜單