A comprehensive security application for Android devices that helps protect your apps and data from unauthorized access.
- App Locking: Protect apps with fake crash messages to confuse intruders
- Unlock Protection: Alarm and photo capture on failed unlock attempts
- Touch Protection: Detect unauthorized physical access to your device
- Biometric Authentication: Support for fingerprint and face unlock
- Quick Settings Tiles: Sleep mode and other system utilities
- App Manager: Share APKs, manage apps, and get technical information
- Shortcuts: Access to hidden system apps and settings
- Notification History: Track and manage app notifications
- Accessibility Service: Seamless app locking integration
- Device Admin: Enhanced security features
- Material 3 Design: Modern, intuitive interface
- Dark/Light Theme: Automatic theme switching support
- Android 7.0+ (API level 24)
- Root Access: Not required
- Device Admin: Required for unlock protection features
- Accessibility Service: Required for app locking
- Android Studio (latest version)
- JDK 11+
- Android SDK (API 24+)
- Git
# Clone the repository
git clone https://github.com/Toolbox-io/Toolbox-io.git
cd Toolbox-io/Android
# Build debug version
./gradlew assembleDebug
# Build release version
./gradlew assembleReleaseAndroid/
βββ app/ # Main application module
β βββ src/main/
β β βββ java/io/toolbox/
β β β βββ ui/ # UI components and activities
β β β βββ api/ # API communication
β β β βββ services/ # Background services
β β β βββ Settings.kt # App configuration
β β βββ res/ # Resources (layouts, strings, etc.)
β β βββ AndroidManifest.xml
βββ androidUtils/ # Utility library
βββ utils/ # Common utilities
βββ build.gradle.kts # Project configuration
The app uses the following configuration:
// GitHub API for update checking
const val GITHUB_TOKEN = "your_github_token" // Read-only token for rate limits
const val GITHUB_API_VERSION = "2022-11-28"
// API endpoints
const val BASE_URL = "https://toolbox-io.ru/api/auth"<!-- Core permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- Security features -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.ACCESSIBILITY_SERVICE" />
<uses-permission android:name="android.permission.DEVICE_ADMIN" />- Install the app from releases or build from source
- Grant permissions for accessibility and device admin
- Set up app locking by selecting apps to protect
- Configure unlock protection with alarm and photo settings
- Enable quick settings tiles for easy access
- Select apps to protect from the app list
- Set a password for unlocking protected apps
- Choose between popup or fullscreen unlock methods
- Protected apps will show fake crash messages to intruders
- Enable alarm on failed unlock attempts
- Configure photo capture of intruders
- Set sensitivity and trigger conditions
- Works with any lock screen method
- Activate "Don't Touch My Phone" mode
- Triggers same actions as unlock protection
- Perfect for preventing unauthorized access
- Encrypted Storage: All passwords stored with encryption
- Secure Communication: HTTPS for all API calls
- No Data Collection: App doesn't collect personal information
- Local Processing: Security features work offline
- No Tracking: No analytics or user tracking
- Local Data: All data stays on your device
- Open Source: Code is publicly auditable
- Transparent: Clear about what permissions are used for
App Locking Not Working:
- Ensure accessibility service is enabled
- Check if the app is in battery optimization whitelist
- Verify device admin permissions are granted
Unlock Protection Not Triggering:
- Enable device admin permissions
- Check if the feature is properly configured
- Ensure the app has necessary system permissions
Quick Settings Tiles Not Appearing:
- Add tiles manually from system settings
- Restart the device after installation
- Check if the app is properly installed
Enable debug logging for troubleshooting:
// In Settings.kt
var debugMode = true // Enable detailed logging- Follow Kotlin coding conventions
- Use meaningful variable names
- Add KDoc comments for public functions
- Test on multiple Android versions
- Ensure accessibility compliance
- Use 4-space indentation
- Prefer immutable data structures
- Use proper error handling
- Follow Material Design guidelines
# Run unit tests
./gradlew test
# Run instrumented tests
./gradlew connectedAndroidTest
# Run lint checks
./gradlew lint- Material Design for UI components
- Jetpack Compose for modern UI development
- Ktor for network communication
- AndroidX for core functionality
- All contributors and users
- GitHub Issues: Report bugs and request features
- Email: [email protected]
- Website: https://toolbox-io.ru
- Documentation: GitHub Wiki
Made with β€οΈ for Android security