Skip to main content

Installation

FileKit can helps you to display dialogs to the user like file, directory and photo pickers, save dialogs, camera and more. FileKit dialogs are available in two flavors:
FileKit Dialogs integrates FileKit Core and automatically provides PlatformFile support.

Platform-specific setup

It’s required to setup FileKit Dialogs on Android and JVM targets. All other platforms are supported out of the box.

Android setup

Using needs an initialization step in your Android application.
This initialization step is not needed when using filekit-dialogs-compose.
FileKit needs to have access to the ActivityResultRegistry to handle the result of the file picker dialog. To do this, you need to add the following code to your MainActivity:
MainActivity.kt

JVM setup

FileKit needs to have your application id to handle the app directory. Your application id is generally the package name or the name of your application. FileKit will use this appId as app directory. We recommend you to initialize FileKit in your main.kt file:
main.kt
The application ID is used to create user-specific directories on different operating systems:
  • Windows: %APPDATA%\your.application.id\
  • macOS: ~/Library/Application Support/your.application.id/
  • Linux: ~/.local/share/your.application.id/

Custom Cache and Data Directories

For applications that need custom directory paths (e.g., portable applications or specific deployment scenarios), you can specify custom cache and data directories:
main.kt

ProGuard Configuration

If you’re using ProGuard or code obfuscation on JVM platforms, add the relevant rules to your proguard-rules.pro:

Linux setup

If using JVM target and Linux distribution, you need to add the following module in your build.gradle.kts file:
build.gradle.kts
This prevents a NoClassDefFoundError in some cases. Read more about this issue in the GitHub issue #107.