Android Native Java

File Manager App for Android

About this project

File Manager is a learning project built with Java to practice how Android apps work with files and storage. It covers browsing folders, multi-select, copy and move with name conflict dialogs, rename, delete, new folders, ZIP compress and extract, sharing, and a details sheet. Along the way it practices storage permissions on different Android versions, background file loading with ViewModel and LiveData, RecyclerView multi-selection, and opening files through FileProvider. The full source code is available to study, reuse, and extend.

Objectives

Understand how Android reads, copies, moves, and deletes files and folders Handle storage permissions across Android versions, including All Files Access on Android 11+ Practice ViewModel, LiveData, and background threads for loading data Build a RecyclerView with multi-select and a changing toolbar and bottom menu Learn how to open and share files safely with FileProvider

Key Features

  • Folder browsing with folders listed first, sorted A to Z
  • Multi-select with select all and a bottom action bar
  • Copy and move with name conflict handling and progress
  • Rename, delete, and create new folders
  • ZIP compress, and extract a ZIP by tapping it
  • Share files and view details (size, files, folders)
  • Show or hide hidden files (setting is remembered)
  • Scroll position restored when going back

Technologies & Frameworks

JavaAndroid SDKViewModelLiveDataRecyclerViewGlideMaterial Components

Integrations & APIs

Android All Files Access (Android 11+) and storage permission (Android 6 to 10), FileProvider, system intents for opening and sharing files

Architecture & Libraries

FileViewModel with LiveData and a background thread for loading files, a FileAdapter with multi-select, helper classes for scroll position and preferences, Glide for thumbnails

Backend & Database

No backend or database: it works directly with the device's file system, and the hidden files setting is stored in SharedPreferences

Outcomes & Results

  • A working file manager covering the main everyday file operations
  • Hands-on practice with files, permissions, threads, and RecyclerView
  • Open source code that others can learn from and build on

Need something similar?

Farhan Saeed · Available for new projects