# file_picker_platform_interface 3.2.0

A common platform interface for the file_picker plugin, defining the shared API surface and data contracts across platforms.




## Installing
```
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.com
flutter pub add 'file_picker_platform_interface:3.2.0'
```
Published: 2026-08-28T12:16:09.343131Z
Expected archive SHA-256: 11ef1b5c14d9186b4788cc273dd8d5cb81bca847145060991a28234ff7916fc1

Available in cache; verification: upstream_checksum
## Direct dependencies
- cross_file: ^0.3.5+4
- flutter: map[sdk:flutter]
- path: ^1.9.1
- plugin_platform_interface: ^2.1.8

## Package README (untrusted upstream documentation)
# file_picker_platform_interface

A common platform interface for the `file_picker` plugin.

This package defines the interface that all platform implementation packages for `file_picker` (such as `android_file_picker`, `file_picker_darwin`, `windows_file_picker`, `file_picker_linux`, `file_picker_web`) must implement.

## Usage

To implement a new platform plugin for `file_picker`, extend `FilePickerPlatform` and register your implementation:

```dart
class FilePickerCustomPlatform extends FilePickerPlatform {
  static void registerWith() {
    FilePickerPlatform.instance = FilePickerCustomPlatform();
  }

  // Implement methods...
}
```

## Changelog
## 3.2.0

- Added `FilePickerPlatform.skipEntitlementsChecks()`, a no-op default hook that platform implementations can override. Lets `file_picker` dispatch through the platform interface instead of importing `file_picker_darwin` directly, which kept the facade package from being wasm compatible.
- Added `DarwinOptions` and `DarwinAssetRepresentationMode`, letting callers request a specific asset representation (`current` or `compatible`) for media selected from the iOS photo library, instead of always using the system default (`automatic`). Restores functionality that was available before the Darwin implementation was rewritten (previously exposed as a way to disable compression), useful to avoid expensive transcoding for large HEVC, HDR, or slow-motion videos.

## 3.1.0

- Added `PlatformFile.extension`, restoring the pre-12.0 convenience getter that was dropped during the federated rewrite. Returns the file extension of `name` without the leading dot, or `null` if there is none.

## 3.0.1

- Improved package description, added example, and added missing API documentation.

## 3.0.0

* Unified platform interface release for federated `file_picker` architecture.

## 2.0.0

* Deprecates interface in favor of standalone `file_picker` for all platforms.

## 1.3.1

* Removes `allowCompression` from interface as it should only be used from `file_picker` (Android & iOS).

## 1.3.0

* Adds `allowCompression` parameter.

## 1.2.0

* Adds `FilePickerStatus`.

## 1.1.0

* Implements `getDirectoryPath()`.

## 1.0.0

* Implements `getFiles()`.

## 0.0.3

* Removes `getFilePath()`.

## 0.0.2

* Updates methods from File Picker interface.

## 0.0.1

* Added File Picker platform interface.






 
