パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v3.3.6

flutter_file_dialog

Android および iOS でファイルを選択および保存するためのダイアログ。

AndroidiOS
30日間ダウンロード
9.7万
いいね数
110
Pub ポイント
160

パッケージをインストール

flutter pub add flutter_file_dialog

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

AndroidおよびiOS向けのネイティブなファイルピッカーおよびセーブダイアログを提供するFlutterパッケージです。ユーザーがデバイスからファイルを選択したり、システムネイティブなインターフェースを通じてファイルを保存できるようにし、プラットフォーム間で一貫した体験を確保します。このパッケージはFlutterアプリにシームレスに統合され、カスタムUIを必要とせずにファイル操作をトリガーするためのシンプルなAPIを提供します。一般的なファイル形式をサポートし、プラットフォーム固有のファイルアクセス権限や制限を尊重します。

用途

  • デバイスストレージからファイルを選択する
  • デバイスにファイルを保存する
  • クロスプラットフォームアプリにおけるネイティブファイルダイアログの統合
  • メディアまたはドキュメントアプリでのファイル入力の処理
  • ユーザー主導のファイル管理を有効にする
  • ファイルのインポート/エクスポートワークフローをサポートする

主な機能

  • Android および iOS でのネイティブダイアログ統合
  • ファイル選択および保存のためのシンプルな API
  • クロスプラットフォーム互換性
  • プラットフォーム固有のファイルアクセスルールを尊重する
  • 最小限のセットアップが必要
  • 一般的なファイル形式をサポートしています

適している対象

  • ファイル選択または保存が必要なアプリ
  • Android および iOS の両方をターゲットとする開発者
  • ネイティブファイルUIを必要とするプロジェクト
  • メディアまたはドキュメント管理アプリケーション
  • ユーザー主導のファイル処理が必要なアプリ

注意事項

  • 適切なプラットフォームの権限が必要です
  • ファイルの選択/保存操作のみに制限されています
  • Webまたはデスクトッププラットフォームのサポートなし
  • ネイティブOSファイルシステムアクセスに依存しています
  • 特定のファイル形式に対して追加の構成が必要になる場合があります

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

flutter_file_dialog

Dialogs for picking and saving files and for picking directories in Android and in iOS.

Features

  • Supports Android (API level 24 or later) and iOS (13.0 or later).
  • Modern plugin implementation based on Kotlin (Android) and Swift (iOS).
  • Pick image files and other documents.
  • Save a file to a selected location.
  • Pick a directory and save files to the picked directory without further dialogs.
  • iOS dialog types: document and image.
  • iOS source types: camera, photo library, saved photos album.
  • Allow user to edit the picked image in iOS.
  • Set file extension filter and mime types filter when picking a document.
  • Possibility to limit picking a file from the local device only (Android).

Examples

Pick an image file
  final params = OpenFileDialogParams(
    dialogType: OpenFileDialogType.image,
    sourceType: SourceType.photoLibrary,
  );
  final filePath = await FlutterFileDialog.pickFile(params: params);
  print(filePath);
Pick a document
  final params = OpenFileDialogParams(
    dialogType: OpenFileDialogType,
    sourceType: SourceType.photoLibrary,
  );
  final filePath = await FlutterFileDialog.pickFile(params: params);
  print(filePath);
Save a file
final params = SaveFileDialogParams(sourceFilePath: "path_of_file_to_save");
final filePath = await FlutterFileDialog.saveFile(params: params);
print(filePath);
Pick a directory and save a file to the picked directory
if (!await FlutterFileDialog.isPickDirectorySupported()) {
  print("Picking directory not supported");
  return;
}

final pickedDirectory = await FlutterFileDialog.pickDirectory();

if (pickedDirectory != null) {
  final filePath = await FlutterFileDialog.saveFileToDirectory(
    directory: pickedDirectory!,
    data: file.readAsBytesSync(),
    mimeType: "image/jpeg",
    fileName: "fileName.jpeg",
    replace: true,
  );
}
Optimize picked image file using flutter_image_utilities

Use the plugin flutter_image_utilities to optimize a picked image file.

  final params = OpenFileDialogParams(
    dialogType: OpenFileDialogType.image,
    sourceType: SourceType.photoLibrary,
  );
  final filePath = await FlutterFileDialog.pickFile(params: params);
  print(filePath);

  if (filePath != null) {
    final pickedFile = File(filePath)

    // optimize the image file
    final optimizedFile = await FlutterImageUtilities.saveAsJpeg(
      sourceFile: pickedFile,
      quality: 60,
      maxWidth: 1920,
      maxHeight: 1024,
    );
  }

カテゴリー

ソースリポジトリ

このパッケージを使用しているプロジェクト