Desktop App Overview
Snapbug Desktop is the central hub for inspecting and debugging your connected mobile and desktop apps. It connects to devices running the Snapbug SDK and provides a suite of real-time inspection tools.
Installation
brew install snapbug-ai/tap/snapbugUpdate later with brew upgrade snapbug.
macOS may block the app on first launch. Open System Settings > Privacy & Security and click Open Anyway. See the macOS installation guide for detailed instructions.
Connecting Your Device
Snapbug Desktop communicates with your app over WebSocket (port 9023) and HTTP (port 9024).
- Connect your Android device via USB.
- Ensure ADB is running and your device is visible:
adb devices. - Launch Snapbug Desktop -- it automatically sets up ADB port forwarding.
- Run your app with the Snapbug SDK initialized.
Make sure your device is visible via adb devices before launching the Desktop app. The SDK and Desktop app versions must match.
Interface Overview
The Desktop app is organized into three main areas:
- Left sidebar -- shows the connected device info (model, OS, app name) and a list of available plugins.
- Main panel -- displays the selected plugin's inspection view with real-time data from the device.
- Toolbar -- provides actions like search, filter, export, and connection status.
Available Inspectors
| Inspector | Description |
|---|---|
| Network | Capture, inspect, and mock HTTP requests and responses |
| Database | Browse tables, run queries, and inspect your local databases |
| Analytics | Monitor analytics events fired by your app in real time |
| SharedPreferences | Inspect and edit SharedPreferences and DataStore values |
| Crash Reporter | View crash logs, stack traces, and uncaught exceptions |
| Files | Browse the app's internal file system |
| Deep Links | Test and trigger deep links on the connected device |
| Tables | View custom tabular data logged by your app |
| Dashboards | Configurable dashboards with custom widgets for real-time app metrics |
| WebSocket | Inspect WebSocket connections and messages |
| gRPC | Monitor gRPC calls and responses |
Configurable Dashboards
The Dashboards inspector lets you define custom dashboards from your app code. Use snapbugDashboard to register widgets that display real-time metrics, counters, or status indicators directly in the Desktop app. This is useful for monitoring app-specific KPIs during development and QA.
Platform Support
| Feature | Android | Desktop (JVM) | iOS (Simulator) | iOS (Device) |
|---|---|---|---|---|
| Network | Yes | Yes | Yes | No |
| Database | Yes | Yes | Yes | No |
| Preferences | Yes | No | No | No |
| Analytics | Yes | Yes | Yes | No |
| Deep Links | Yes | No | No | No |
| Files | Yes | No | No | No |
| Tables | Yes | Yes | Yes | No |
| Dashboards | Yes | No | No | No |
| Crash Reporter | Yes | No | Yes | No |
iOS device support requires a simulator. Direct on-device iOS inspection is not yet available.
Requirements
- JDK 21 or the bundled runtime included with the installer
- ADB installed and in your PATH (for Android device connections)
- SDK version must match the Desktop app version