mirror of
https://github.com/WSA-Installer/wsa-webdav.git
synced 2026-07-29 11:24:16 -07:00
153 lines
5.8 KiB
Markdown
153 lines
5.8 KiB
Markdown
<div align="center">
|
|||
|
|
|
||
|
|
# WSA WebDev
|
||
|
|
|
||
|
|
### Headless Android WebDAV Server for WSA
|
||
|
|
|
||
|
|

|
||
|
|

|
||
|
|

|
||
|
|

|
||
|
|
|
||
|
|
**Access your WSA file system from any browser — with root support, web file manager, and ADB control.**
|
||
|
|
|
||
|
|
Part of the [WSA Installer](https://github.com/WSA-Installer) organization.
|
||
|
|
|
||
|
|
</div>
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Overview
|
||
|
|
|
||
|
|
WSA WebDev is a headless Android WebDAV server APK for rooted Windows Subsystem for Android (WSA). It provides:
|
||
|
|
|
||
|
|
- **WebDAV Protocol** — Full WebDAV server with all standard methods
|
||
|
|
- **Root Access** — Access the entire Android filesystem via Magisk
|
||
|
|
- **Web File Manager** — Beautiful SPA with dark/light themes
|
||
|
|
- **ADB Control** — Start, stop, and monitor via ADB broadcasts
|
||
|
|
- **Auto-Start** — Boot receiver for automatic startup
|
||
|
|
- **Health Monitoring** — 30-second interval health checks
|
||
|
|
|
||
|
|
## Features
|
||
|
|
|
||
|
|
| Feature | Description |
|
||
|
|
|:--------|:------------|
|
||
|
|
| WebDAV Protocol | OPTIONS, GET, PUT, DELETE, MKCOL, COPY, MOVE, PROPFIND, PROPPATCH, LOCK, UNLOCK |
|
||
|
|
| Root Access | Full filesystem access via `su` (requires Magisk) |
|
||
|
|
| Web File Manager | Grid/list views, drag-drop, hex viewer, terminal, bookmarks |
|
||
|
|
| ADB Commands | START, STOP, RESTART, STATUS, HEALTH |
|
||
|
|
| Auto-Start | Boot receiver for automatic startup |
|
||
|
|
| Health Monitoring | 30-second interval checks with exponential backoff |
|
||
|
|
| Zero Dependencies | Pure Kotlin, no external libraries |
|
||
|
|
|
||
|
|
## Quick Start
|
||
|
|
|
||
|
|
### Prerequisites
|
||
|
|
|
||
|
|
- Windows with WSA installed
|
||
|
|
- Root access (Magisk) — optional, for root mode
|
||
|
|
- JDK 17 (for building)
|
||
|
|
- Python 3 (for build script)
|
||
|
|
|
||
|
|
### Build
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Windows
|
||
|
|
build.bat
|
||
|
|
|
||
|
|
# Linux/Mac
|
||
|
|
chmod +x build.sh
|
||
|
|
./build.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
### Install
|
||
|
|
|
||
|
|
```bash
|
||
|
|
adb install output/app-release.apk
|
||
|
|
```
|
||
|
|
|
||
|
|
### Start Server
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# User mode
|
||
|
|
adb shell am start -n com.wsa.webdav/.MainActivity
|
||
|
|
|
||
|
|
# Root mode
|
||
|
|
adb shell su -c "sh /data/data/com.wsa.webdav/files/app.sh start"
|
||
|
|
```
|
||
|
|
|
||
|
|
### Access Files
|
||
|
|
|
||
|
|
- **WebDAV:** `http://127.0.0.1:8088/files/`
|
||
|
|
- **Web File Manager:** `http://127.0.0.1:8088`
|
||
|
|
|
||
|
|
## Documentation
|
||
|
|
|
||
|
|
- [Installation Guide](docs/installation.md)
|
||
|
|
- [Configuration](docs/configuration.md)
|
||
|
|
- [WebDAV Protocol](docs/webdav-protocol.md)
|
||
|
|
- [ADB Commands](docs/adb-commands.md)
|
||
|
|
- [Root Access](docs/root-access.md)
|
||
|
|
- [Troubleshooting](docs/troubleshooting.md)
|
||
|
|
|
||
|
|
## Architecture
|
||
|
|
|
||
|
|
```
|
||
|
|
┌─────────────────────────────────────────────────────┐
|
||
|
|
│ WSA WebDev APK │
|
||
|
|
├─────────────────────────────────────────────────────┤
|
||
|
|
│ │
|
||
|
|
│ ┌─────────────┐ ┌──────────────────┐ │
|
||
|
|
│ │ WebDAV │ │ Web File Manager │ │
|
||
|
|
│ │ Server │◄──►│ (SPA) │ │
|
||
|
|
│ │ (Kotlin) │ └──────────────────┘ │
|
||
|
|
│ └──────┬──────┘ │
|
||
|
|
│ │ │
|
||
|
|
│ ▼ │
|
||
|
|
│ ┌─────────────┐ ┌──────────────────┐ │
|
||
|
|
│ │ Filesystem │ │ Root Manager │ │
|
||
|
|
│ │ Provider │ │ (Magisk su) │ │
|
||
|
|
│ └─────────────┘ └──────────────────┘ │
|
||
|
|
│ │
|
||
|
|
│ ┌─────────────┐ ┌──────────────────┐ │
|
||
|
|
│ │ ADB │ │ Health Monitor │ │
|
||
|
|
│ │ Receiver │ │ (30s interval) │ │
|
||
|
|
│ └─────────────┘ └──────────────────┘ │
|
||
|
|
│ │
|
||
|
|
└─────────────────────────────────────────────────────┘
|
||
|
|
```
|
||
|
|
|
||
|
|
## Tech Stack
|
||
|
|
|
||
|
|
| Technology | Purpose |
|
||
|
|
|:-----------|:--------|
|
||
|
|
| Kotlin | Primary language |
|
||
|
|
| Android SDK 34 | Target platform |
|
||
|
|
| WebDAV Protocol | File access |
|
||
|
|
| HTML/CSS/JS | Web file manager SPA |
|
||
|
|
| ADB | Remote control |
|
||
|
|
|
||
|
|
## Supported Environments
|
||
|
|
|
||
|
|
| Environment | Status |
|
||
|
|
|:------------|:-------|
|
||
|
|
| WSA with Magisk (root) |  |
|
||
|
|
| WSA without root |  |
|
||
|
|
| Android 13+ |  |
|
||
|
|
| Android 14+ |  |
|
||
|
|
| x86_64 |  |
|
||
|
|
| ARM64 |  |
|
||
|
|
|
||
|
|
## Contributing
|
||
|
|
|
||
|
|
See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
||
|
|
|
||
|
|
## License
|
||
|
|
|
||
|
|
This project is licensed under the MIT License — see [LICENSE](LICENSE) for details.
|
||
|
|
|
||
|
|
## Acknowledgments
|
||
|
|
|
||
|
|
- Part of the [WSA Installer](https://github.com/WSA-Installer) project
|
||
|
|
- Built by [AT Tech Zone](https://www.youtube.com/@AT_Tech_Zone)
|