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

full_picker のカバー
パッケージ詳細v2.1.5

full_picker

さまざまなモードでファイルを選択するのを支援するFlutterパッケージです。

AndroidiOS
30日間ダウンロード
142
いいね数
36
Pub ポイント
130

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

flutter pub add full_picker

パッケージ概要

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

Full Picker は、Android および iOS でさまざまなソースからファイルを選択するのを簡単にするように設計された Flutter パッケージです。単一または複数のファイルを選択できる直感的なインターフェースを提供し、さまざまなファイル形式をサポートし、カスタマイズ可能なオプションも提供します。統合の容易さを重視して開発されており、Flutter アプリケーション内のファイル処理をスムーズにすることでユーザー体験を向上させます。このパッケージは mbfakouri.ir によってメンテナンスされており、pub.dev から利用可能です。

用途

  • 画像と文書の選択
  • 一度に複数のファイルを選択する
  • フォームへのファイル選択の統合
  • ファイルアップロードのサポート
  • メディアピッカー機能を有効にする

主な機能

  • クロスプラットフォーム対応(Android および iOS)
  • 複数ファイル選択
  • カスタマイズ可能なファイルタイプのフィルタリング
  • シンプルな API インテグレーション
  • 組み込みファイルプレビュー

適している対象

  • メディア重視のアプリ
  • ドキュメント管理システム
  • ユーザープロフィールのアップロード機能
  • フォームベースのデータ収集
  • ファイル共有アプリケーション

注意事項

  • プラットフォーム固有の権限が必要です
  • Android および iOS に限定
  • ファイルタイプに対する追加の検証が必要になる場合があります
  • デバイスのストレージアクセスに依存
  • Webプラットフォームには適していません

元の README

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

logo

Full picker

pub package
A Flutter package that helps you select files in different modes

Features

  • Multi File picker
  • Video Compressor
  • Image Cropper
  • Custom Camera
  • Custom Name For Files
  • Voice recorder
  • URL picker
  • Support Material 1,2,3

Example App

Usage

Quick simple usage example:

FullPicker(
  context: context,
  prefixName: "test",
  file: true,
  image: true,
  video: true,
  videoCamera: true,
  imageCamera: true,
  voiceRecorder: true,
  videoCompressor: false,
  imageCropper: false,
  multiFile: true,
  url: true,
  onError: (int value) {
    print(" ----  onError ----=$value");
  },
  onSelected: (value) {
    print(" ----  onSelected ----");
  },
);

and use minSdkVersion 21 in your Module-level build.gradle file

Video Compressor

If you need to compress the video (only support Android And IOS), add the following

iOS

Add the following to your Info.plist file, located in <project root>/ios/Runner/Info.plist:

<key>NSPhotoLibraryUsageDescription</key>
<string>${PRODUCT_NAME} library Usage</string>
Android

Add the following permissions in AndroidManifest.xml:

API < 29

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="28"/>

API >= 29

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

Include this in your Project-level build.gradle file:

allprojects {
    repositories {
        .
        .
        .
        maven { url 'https://jitpack.io' }
    }
}

Include this in your Module-level build.gradle file:

implementation 'com.github.AbedElazizShe:LightCompressor:1.0.0

Image Cropper

If you need to crop the image (only support Android And IOS), add the following

Android
  • Add UCropActivity into your AndroidManifest.xml
<activity
    android:name="com.yalantis.ucrop.UCropActivity"
    android:screenOrientation="portrait"
    android:theme="@style/Ucrop.CropTheme"/>
iOS
  • No configuration required

Voice Recorder

If you need to voice recorder, add the following

Android
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- Optional, you'll have to check this permission by yourself. -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

min SDK: 19 (maybe higher => encoder dependent)

iOS
<key>NSMicrophoneUsageDescription</key>
<string>We need to access to the microphone to record audio file</string>

min SDK: 11.0

macOS
<key>NSMicrophoneUsageDescription</key>
<string>We need to access to the microphone to record audio file</string>

Multi Language

There is a possibility of customization for different languages in this package

FullPickerLanguage language = FullPickerLanguage.copy(
    camera: S.current.camera,
    selectFile: S.current.selectFile,
    file: S.current.file,
    voiceRecorder: S.current.voiceRecorder,
    url: S.current.url,
    enterURL: S.current.enterURL,
    cancel: S.current.cancel,
    ok: S.current.ok,
    gallery: S.current.gallery,
    cropper: S.current.cropper,
    onCompressing: S.current.onCompressing,
    tapForPhotoHoldForVideo: S.current.tapForPhotoHoldForVideo,
    cameraNotFound: S.current.cameraNotFound,
    noVoiceRecorded: S.current.noVoiceRecorded,
    denyAccessPermission: S.current.denyAccessPermission);
    
FullPicker(
  ...
  language: language,
  ...
);   

S For intl Package

Getting Started

For help getting started with Flutter, view our online documentation.

For help on editing plugin code, view the documentation.

カテゴリー

依存関係

依存関係一覧 14 件

ソースリポジトリ

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

データはまだありません。