Skip to content

app_debugger_storage Pro

Storage inspector sub-brick for app_debugger. Adds a Storage tab showing a categorised breakdown of every app data directory. Tap Capture to scan, drill into categories, and Export JSON to share the result. Automatically swapped to a no-op stub in release builds.

Version: 1.0.0

Variables

This brick has no generation-time variables.

Prerequisites

  • app_debugger brick must be installed first (provides the archipelago:debug_panel_pages sentinel in bootstrap.dart).

Usage

Interactive

bash
archipelago generate app_debugger_storage

Non-interactive (CI)

bash
archipelago generate app_debugger_storage --config my_config.json

Generated Structure

features/
└── app_debugger_storage/
    ├── app_debugger_storage_api/
    │   └── lib/src/
    │       └── models/
    ├── app_debugger_storage/
    │   ├── android/src/main/        # Native Kotlin StorageAnalyzer
    │   ├── ios/Classes/             # Sandbox-limited iOS stub
    │   └── lib/src/
    └── app_debugger_storage_noop/
        └── lib/src/

Platform Support

PlatformBehaviour
AndroidFull directory walk via native Kotlin StorageAnalyzer. Inspects APK, FILES, DATABASES, SHARED_PREFS, CODE_CACHE, internal cache, external cache, external files, and OBB. One level of children per category.
iOSSandbox-limited stub. Only the app bundle size is available via FileManager. Data, cache, and external directories cannot be inspected due to iOS sandbox restrictions. A note banner is shown in the UI.

Storage Categories

CategoryAndroid Path
appBundleapplicationInfo.sourceDir
filescontext.filesDir
databasescontext.getDatabasePath()
sharedPrefsapplicationInfo.dataDir/shared_prefs
codeCachecontext.codeCacheDir
internalCachecontext.cacheDir
externalCachecontext.externalCacheDir
externalFilescontext.getExternalFilesDir(null)
obbcontext.obbDir

Dependencies Added

  • share_plus: ^11.0.0 (debug impl only)
  • path_provider: ^2.1.5 (debug impl only)

Native Plugin

The Android plugin (AppDebuggerStoragePlugin) registers MethodChannel('archipelago/app_debugger_storage') via the FlutterPlugin interface. The iOS plugin registers the same channel and returns a sandbox-limited response.

Android: File Sharing

The export feature uses share_plus, which auto-registers a FileProvider in its own AndroidManifest. Manifest merger combines this with your app's manifest automatically — no manual setup needed for typical Flutter apps.

build_prepare Swap

yaml
- debug: app_debugger_storage
  release: app_debugger_storage_noop

Built by Banua Coder