Skip to content

Commit 13da1f0

Browse files
committed
docs: Add CHANGELOG.md, update README with full feature list and credits
1 parent b9a556c commit 13da1f0

File tree

2 files changed

+164
-15
lines changed

2 files changed

+164
-15
lines changed

CHANGELOG.md

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
# Changelog
2+
3+
All notable changes to AppControlX.
4+
5+
## [1.0.0] - 2024-12
6+
7+
### Added
8+
9+
#### Core Features
10+
- Setup wizard with mode selection (Root/Shizuku/View-Only)
11+
- Disclaimer screen with risk acknowledgment
12+
- App list with User/System app filter
13+
- Status filter (All/Running/Stopped/Frozen/Restricted)
14+
- Search functionality for apps
15+
- Batch selection and operations with progress tracking
16+
17+
#### App Actions
18+
- Freeze/Unfreeze apps (disable without uninstall)
19+
- Force Stop running apps
20+
- Restrict/Allow Background (both buttons always visible)
21+
- Clear Cache with size preview
22+
- Clear Data
23+
- Uninstall (current user)
24+
- Launch App
25+
- Open System Settings (AOSP App Info)
26+
27+
#### App Detail
28+
- Quick actions grid layout (3 columns)
29+
- Background state display (RUN_IN_BACKGROUND / WAKE_LOCK)
30+
- Real-time status refresh after actions
31+
32+
#### Tools
33+
- Activity Launcher with search, expand/collapse, hold to copy path
34+
- QColor / Display Color (Qualcomm, MediaTek MiraVision, AOSP, Samsung)
35+
- Extra Dim (Android 12+)
36+
- Notification Log
37+
- Notification History
38+
- Battery Optimization
39+
- Power Mode
40+
- Device Info
41+
- Device Diagnostic
42+
- Unknown Sources management
43+
- Manage Apps (AOSP)
44+
45+
#### Action Logs & Rollback
46+
- Action history with timestamps
47+
- Rollback support for battery actions (Freeze/Unfreeze, Restrict/Allow)
48+
- State snapshots before actions
49+
- Works with both Root and Shizuku modes
50+
51+
#### Settings
52+
- Theme selection (System/Light/Dark)
53+
- Language (System/English/Indonesian)
54+
- Mode switching with restart prompt
55+
- Safety settings (Confirm actions, Protect system apps)
56+
- View action logs with count
57+
- Clear snapshots
58+
- Reset setup wizard
59+
60+
#### About Page
61+
- App info with version
62+
- Stats (User apps, System apps, Actions count)
63+
- Device info (Model, Android version)
64+
- Quick links (GitHub, Star, Bug Report, Share)
65+
- Sticky footer with credits
66+
67+
#### Safety & Security
68+
- SafetyValidator blocks critical system apps
69+
- Protected packages: AOSP, Google, Xiaomi/MIUI, Samsung, OPPO, Vivo, Huawei, OnePlus, Nothing, ASUS, Sony, Motorola
70+
- Command whitelist in RootExecutor
71+
- Package name validation
72+
73+
#### Platform Support
74+
- Root mode via libsu
75+
- Shizuku mode with UserService (full features, no root)
76+
- View-Only mode for browsing
77+
78+
#### UI/UX
79+
- Material 3 design
80+
- Dark mode support
81+
- ViewBinding
82+
- Card-based layouts
83+
- Status badges (Running, Stopped, Frozen, Restricted)
84+
- Haptic feedback on selections
85+
- Icons for all tools
86+
- Compact About page with sticky footer
87+
88+
### Changed
89+
- Running detection uses inverse logic (no STOPPED/FROZEN badge = RUNNING)
90+
- Action logs readable without active executor
91+
- Tools redesigned with icons and better organization
92+
- About page made more compact
93+
94+
### Removed
95+
- Timber logging (replaced with android.util.Log)
96+
- Unused presentation/viewmodel folder
97+
- Unused data/repository folder
98+
- Unused worker folder
99+
- Gradient backgrounds
100+
- Emoji in UI hints
101+
102+
### Fixed
103+
- QColorActivity typo (case sensitive)
104+
- Action logs not saving
105+
- Shizuku executor service binding
106+
- Settings log count for all modes
107+
- App list refresh after actions
108+
- Background state parsing from appops
109+
- Running filter sync with badge logic
110+
111+
---
112+
113+
## Architecture
114+
115+
```
116+
com.appcontrolx/
117+
├── data/local/ # Room Database (DAO, Entity)
118+
├── di/ # Hilt modules
119+
├── executor/ # RootExecutor, ShizukuExecutor
120+
├── model/ # AppInfo, ExecutionMode
121+
├── rollback/ # RollbackManager, ActionLog
122+
├── service/ # AppFetcher, BatteryPolicyManager, PermissionBridge
123+
├── ui/ # Activities, Fragments, Adapters, BottomSheets
124+
└── utils/ # Constants, SafetyValidator
125+
```
126+
127+
## Tech Stack
128+
129+
- Kotlin 1.9
130+
- Min SDK 29 (Android 10)
131+
- Target SDK 34 (Android 14)
132+
- MVVM + Hilt DI
133+
- Material 3
134+
- Coroutines + Flow
135+
- libsu (Root)
136+
- Shizuku-API

README.md

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,30 @@ A powerful Android application for controlling app behavior, battery optimizatio
1717
- **Real-time Status** - View current background restriction status per app
1818

1919
### Tools
20-
- **Activity Launcher** - Launch hidden activities from any app (long press to copy)
21-
- **Manage Unknown Sources** - Control app install permissions
22-
- **Manage Apps (AOSP)** - Pure AOSP app manager
23-
- **Extra Dim** - Reduce screen brightness below minimum
20+
- **Activity Launcher** - Launch hidden activities from any app (hold to copy path)
21+
- **QColor / Display Color** - Qualcomm QColor, MediaTek MiraVision, AOSP, Samsung
22+
- **Extra Dim** - Reduce screen brightness below minimum (Android 12+)
2423
- **Notification Log/History** - Access notification records
25-
- **Battery Usage** - View app battery consumption
24+
- **Battery Optimization** - View app battery consumption
2625
- **Power Mode** - Quick access to power settings
2726
- **Device Info & Diagnostic** - System information
27+
- **Unknown Sources** - Control app install permissions
28+
- **Manage Apps (AOSP)** - Pure AOSP app manager
29+
30+
### Action Logs & Rollback
31+
- **Action History** - Track all operations with timestamps
32+
- **Rollback** - Reverse battery actions (Freeze/Unfreeze, Restrict/Allow)
33+
- **State Snapshots** - Automatic backup before actions
2834

2935
### UI/UX
30-
- **Material 3 Design** - Modern, clean interface
36+
- **Material 3 Design** - Modern, clean interface with icons
3137
- **Dark Mode** - Full dark theme support
3238
- **Multi-language** - English & Indonesian
33-
- **Search & Filter** - Quick app discovery
34-
- **Action Logs** - History of all operations
39+
- **Search & Filter** - Quick app discovery by name, package, or status
40+
41+
## Screenshots
42+
43+
*Coming soon*
3544

3645
## Platform Support
3746

@@ -45,7 +54,7 @@ A powerful Android application for controlling app behavior, battery optimizatio
4554
| Custom ROM | Android 10+ | Full |
4655

4756
### Protected System Apps
48-
SafetyValidator blocks critical system packages from being disabled/frozen to prevent bricking. Covers AOSP, Google, Xiaomi, Samsung, OPPO, Vivo, Huawei, OnePlus, Nothing, and more.
57+
SafetyValidator blocks critical system packages from being disabled/frozen to prevent bricking. Covers AOSP, Google, Xiaomi, Samsung, OPPO, Vivo, Huawei, OnePlus, Nothing, ASUS, Sony, Motorola, and more.
4958

5059
## Requirements
5160

@@ -74,6 +83,7 @@ MVVM architecture with Hilt dependency injection.
7483

7584
```
7685
com.appcontrolx/
86+
├── data/local/ # Room Database
7787
├── di/ # Hilt modules
7888
├── executor/ # Command execution (Root/Shizuku)
7989
├── model/ # Data classes
@@ -89,6 +99,7 @@ com.appcontrolx/
8999
|-----------|-------------|
90100
| `PermissionBridge` | Detects execution mode (Root/Shizuku/None) |
91101
| `RootExecutor` | Executes commands via libsu with security validation |
102+
| `ShizukuExecutor` | Executes commands via Shizuku UserService |
92103
| `BatteryPolicyManager` | Manages appops and battery settings |
93104
| `RollbackManager` | Action logs and state snapshots |
94105
| `SafetyValidator` | Prevents actions on critical system apps |
@@ -123,11 +134,9 @@ appops set <package> RUN_IN_BACKGROUND allow # Allow
123134
appops set <package> WAKE_LOCK ignore # Disable wake lock
124135
```
125136

126-
## Known Issues
137+
## Changelog
127138

128-
| Issue | Status | Impact |
129-
|-------|--------|--------|
130-
| Running detection uses inverse logic | By Design | Apps without STOPPED/FROZEN badge = RUNNING |
139+
See [CHANGELOG.md](CHANGELOG.md) for full history.
131140

132141
## Contributing
133142

@@ -140,7 +149,11 @@ appops set <package> WAKE_LOCK ignore # Disable wake lock
140149

141150
GPL-3.0 License - see [LICENSE](LICENSE)
142151

143-
## Acknowledgments
152+
## Credits
153+
154+
Made with ❤️ by [risunCode](https://github.com/risunCode)
155+
156+
### Acknowledgments
144157

145158
- [libsu](https://github.com/topjohnwu/libsu) - Root shell library
146-
- [Shizuku](https://github.com/RikkaApps/Shizuku) - Elevated API access
159+
- [Shizuku](https://github.com/RikkaApps/Shizuku) - Elevated API access

0 commit comments

Comments
 (0)