Skip to content

Commit ff3322d

Browse files
committed
Update README with current features - Simplified architecture section (removed unused components) - Added Tools section (Activity Launcher, Extra Dim, etc) - Added UI/UX features (Dark Mode, Multi-language, Search) - Updated commands reference - Cleaner, more concise format
1 parent 66d3c07 commit ff3322d

File tree

1 file changed

+38
-63
lines changed

1 file changed

+38
-63
lines changed

README.md

Lines changed: 38 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,43 @@
22

33
A powerful Android application for controlling app behavior, battery optimization, and system management — using Root or Shizuku.
44

5-
## Overview
6-
7-
AppControlX provides granular control over installed applications without requiring manual user interaction. It executes shell commands directly via Root or Shizuku to freeze, unfreeze, uninstall apps, and manage battery optimization settings.
8-
95
## Features
106

117
### App Control
128
- **Freeze/Unfreeze** - Disable apps without uninstalling (keeps data intact)
139
- **Uninstall** - Remove apps for current user while preserving data
1410
- **Force Stop** - Immediately terminate running applications
15-
- **Batch Operations** - Apply actions to multiple apps simultaneously
11+
- **Clear Cache/Data** - Clean app storage with size preview
12+
- **Batch Operations** - Apply actions to multiple apps with progress tracking
1613

1714
### Battery Optimization
1815
- **Restrict Background** - Block apps from running in background
1916
- **Allow Background** - Permit background execution
20-
- **Wake Lock Control** - Prevent apps from keeping CPU awake
21-
- **Doze Whitelist** - Exclude apps from battery optimization
17+
- **Real-time Status** - View current background restriction status per app
18+
19+
### Tools
20+
- **Activity Launcher** - Launch hidden activities from any app
21+
- **Extra Dim** - Reduce screen brightness below minimum
22+
- **Notification Log/History** - Access notification records
23+
- **Battery Usage** - View app battery consumption
24+
- **Power Mode** - Quick access to power settings
25+
- **Device Info & Diagnostic** - System information
26+
27+
### UI/UX
28+
- **Material 3 Design** - Modern, clean interface
29+
- **Dark Mode** - Full dark theme support
30+
- **Multi-language** - English & Indonesian
31+
- **Search & Filter** - Quick app discovery
32+
- **Action Logs** - History of all operations
33+
34+
## Platform Support
2235

23-
### Platform Support
2436
| Platform | Version | Support |
2537
|----------|---------|---------|
2638
| Android Stock | 10 - 15 | Full |
27-
| MIUI | 12 - 14 | Full |
28-
| HyperOS | 1.0 - 2.0 | Full |
39+
| MIUI/HyperOS | 12+ | Full |
2940
| Custom ROM | Android 10+ | Full |
3041

31-
### Safety Features
32-
- **Rollback System** - Automatically saves state before actions, allows restoration
33-
- **Safety Validation** - Blocks actions on critical system apps
34-
- **Fallback Mode** - Opens system settings if commands fail
35-
3642
## Requirements
3743

3844
- Android 10+ (API 29)
@@ -53,105 +59,74 @@ git clone https://github.com/risunCode/AppControl-X.git
5359
cd AppControl-X
5460
./gradlew assembleDebug
5561
```
56-
Output: `app/build/outputs/apk/debug/app-debug.apk`
5762

5863
## Architecture
5964

60-
The app follows **MVVM (Model-View-ViewModel)** architecture with **Repository pattern** and uses **Hilt** for dependency injection.
65+
MVVM architecture with Hilt dependency injection.
6166

6267
```
6368
com.appcontrolx/
64-
├── data/
65-
│ ├── local/ # Room Database, DataStore
66-
│ └── repository/ # Data repositories
6769
├── di/ # Hilt modules
6870
├── executor/ # Command execution (Root/Shizuku)
6971
├── model/ # Data classes
70-
├── presentation/
71-
│ └── viewmodel/ # ViewModels
72-
├── rollback/ # State management & rollback
72+
├── rollback/ # Action logs & rollback
7373
├── service/ # Business logic
7474
├── ui/ # Activities, Fragments, Adapters
75-
├── utils/ # Helpers & validators
76-
└── worker/ # WorkManager workers
75+
└── utils/ # Helpers & validators
7776
```
7877

7978
### Key Components
8079

8180
| Component | Description |
8281
|-----------|-------------|
83-
| `AppRepository` | Central data access layer |
84-
| `AppListViewModel` | UI state management for app list |
85-
| `PermissionBridge` | Detects available execution mode (Root/Shizuku/None) |
82+
| `PermissionBridge` | Detects execution mode (Root/Shizuku/None) |
8683
| `RootExecutor` | Executes commands via libsu with security validation |
87-
| `ShizukuExecutor` | Executes commands via Shizuku UserService |
8884
| `BatteryPolicyManager` | Manages appops and battery settings |
89-
| `RollbackManager` | Saves snapshots and restores previous state |
85+
| `RollbackManager` | Action logs and state snapshots |
9086
| `SafetyValidator` | Prevents actions on critical system apps |
91-
| `SettingsDataStore` | Persistent settings with DataStore |
92-
| `AppDatabase` | Room database for action logs |
9387

9488
## Tech Stack
9589

9690
- **Language**: Kotlin 1.9
97-
- **Architecture**: MVVM + Repository Pattern
98-
- **DI**: Hilt 2.50
91+
- **Min SDK**: 29 (Android 10)
92+
- **Target SDK**: 34 (Android 14)
93+
- **Architecture**: MVVM + Hilt
9994
- **UI**: Material 3, ViewBinding
100-
- **Database**: Room 2.6
101-
- **Preferences**: DataStore
10295
- **Async**: Coroutines + Flow
103-
- **Navigation**: Jetpack Navigation Component
104-
- **Background**: WorkManager
105-
- **Root**: [libsu](https://github.com/topjohnwu/libsu) by topjohnwu
106-
- **Shizuku**: [Shizuku-API](https://github.com/RikkaApps/Shizuku-API) by RikkaApps
107-
- **Build**: Gradle 8.2, AGP 8.2.0
108-
- **CI/CD**: GitHub Actions
109-
110-
## Localization
111-
112-
| Language | Code | Status |
113-
|----------|------|--------|
114-
| English | `en` | Default |
115-
| Indonesian | `id` | Complete |
116-
117-
## Theme Support
118-
119-
- Light Mode
120-
- Dark Mode
121-
- System Default (follows device setting)
96+
- **Root**: [libsu](https://github.com/topjohnwu/libsu)
97+
- **Shizuku**: [Shizuku-API](https://github.com/RikkaApps/Shizuku-API)
12298

12399
## Commands Reference
124100

125101
### App Control
126102
```bash
127103
pm disable-user --user 0 <package> # Freeze
128104
pm enable <package> # Unfreeze
129-
pm uninstall -k --user 0 <package> # Uninstall (keep data)
105+
pm uninstall -k --user 0 <package> # Uninstall
130106
am force-stop <package> # Force stop
107+
pm clear --cache-only <package> # Clear cache
108+
pm clear <package> # Clear data
131109
```
132110

133111
### Battery Control
134112
```bash
135113
appops set <package> RUN_IN_BACKGROUND ignore # Restrict
136114
appops set <package> RUN_IN_BACKGROUND allow # Allow
137115
appops set <package> WAKE_LOCK ignore # Disable wake lock
138-
cmd deviceidle whitelist +<package> # Doze whitelist
139116
```
140117

141118
## Contributing
142119

143120
1. Fork the repository
144-
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
145-
3. Commit your changes (`git commit -m 'Add amazing feature'`)
146-
4. Push to the branch (`git push origin feature/amazing-feature`)
147-
5. Open a Pull Request
121+
2. Create a feature branch
122+
3. Commit your changes
123+
4. Push and open a Pull Request
148124

149125
## License
150126

151-
This project is licensed under the GPL-3.0 License - see the [LICENSE](LICENSE) file for details.
127+
GPL-3.0 License - see [LICENSE](LICENSE)
152128

153129
## Acknowledgments
154130

155131
- [libsu](https://github.com/topjohnwu/libsu) - Root shell library
156132
- [Shizuku](https://github.com/RikkaApps/Shizuku) - Elevated API access
157-
- [Don't Kill My App](https://dontkillmyapp.com/) - Vendor battery restriction database

0 commit comments

Comments
 (0)