Multi‑Protocol Support

  • Local: Traditional Android file system access.
  • Network: Supports SMB (jCIFS), FTP (Apache Commons Net), SFTP (SSHJ), and WebDAV (Sardine).
  • Pending Protocols: FTPS, HTTP, NFS, and NAS (placeholders exist but not yet implemented).

File Operations

  • Standard Operations: Copy, Move, Delete, Rename, Create Folder.
  • TransferManager: Handles recursive operations, collision rules (Rename, Replace, Skip, Cancel), and progress tracking across all protocols.

Advanced Features

  • Archiving: Extract and compress ZIP, RAR, 7Z, TAR, GZ, BZ2.
  • Streaming: StreamServer + StreamingService allow streaming large network media files to external players.
  • Search: Recursive search for SMB, FTP, SFTP, and WebDAV.
  • Permissions: View and edit octal/symbolic permissions for network files (SFTP/FTP).

Architecture

UI Layer

  • Screen‑based navigation using NavHost.
  • Screens include: LocalScreen, NetworkScreen, ServerBrowserScreen.

ViewModels

  • NetworkFileViewModel: Manages network state, file listing, extraction, and complex operations.
  • LocalFileViewModel: Handles local file management.

Data Layer

  • ServerRepository: Stores and manages saved network connections.

Utilities

  • FileUtils: Formatting and file utilities.
  • FileOpener: Intent‑based file opening.
  • SettingsManager: User preferences (view mode, hidden files, etc.).