Table of Contents
MindMaster is an Android productivity app thats lets you do whats necessary by getting rid of all kinds of distractions.
Supports Android 10 & above only.
Follow the below instructions to get started.
-
Android Studio
-
Java 8+
-
Kotlin 1.9+
-
Clone this repository
git clone https://github.com/ArmanKhanTech/MindMaster.git
MindMaster offers a comprehensive set of features to help you manage your digital well-being and stay focused on your tasks. Here's an overview of its key functionalities:
Blocking:
- Apps & Games: Block specific apps and games to prevent distractions and regain control over your time.
- Websites & Keywords: Block unwanted websites and keywords to minimize exposure to harmful content or unproductive browsing.
- Notifications: Silence notifications from distracting apps to maintain focus and avoid interruptions.
Data Access Control:
- Cellular & Wi-Fi: Restrict cellular or Wi-Fi data access per app or game to reduce data usage and prevent unwanted background activity.
Profiles & Schedules:
- Multiple Profiles: Create and manage different profiles for various use cases (e.g., work, study, leisure) with customized blocking settings.
- Flexible Schedules: Set up to different blocking schedules to automate app and website blocking during specific times of the day or week.
Usage Insights:
- Detailed Overview: Gain insights into your digital habits with comprehensive usage data for up to a year.
- Screen Time & Launch Count: Track the amount of time spent on apps and the number of times you launch them.
- Data Usage: Monitor data usage per app to identify areas for potential optimization.
Additional Features:
- Take-a-Break: Temporarily block all distractions for a set duration to focus on other tasks or simply take a mindful break.
- Blocking Modes: Choose from five blocking modes (Usage Limit, Specific Time Interval, Quick Block, Number of Launches & Fixed Block) to customize the intensity of your blocking experience.
- Normal & Strict Modes: Switch between Normal and Strict modes to adjust the overall level of blocking and access restrictions.
- Uninstall Protection: Prevent accidental uninstallation of MindMaster to ensure consistent protection against distractions.
- Password Protection: Secure your settings and preferences with a password to maintain control over your blocking configurations.
Supported Browsers:
MindMaster currently supports blocking for the following popular browsers:
- Google Chrome
- Mozilla Firefox
- Opera
- Opera Mini
But more browsers can be added at app/src/main/java/com/android/MindMaster/Service/LogURLService.java
private static List<SupportedBrowserConfig> getSupportedBrowsers() {
List<SupportedBrowserConfig> browsers = new ArrayList<>();
browsers.add(new SupportedBrowserConfig("com.android.chrome", "com.android.chrome:id/url_bar"));
browsers.add(new SupportedBrowserConfig("org.mozilla.firefox", "org.mozilla.firefox:id/mozac_browser_toolbar_url_view"));
browsers.add(new SupportedBrowserConfig("com.opera.browser", "com.opera.browser:id/url_field"));
browsers.add(new SupportedBrowserConfig("com.opera.mini.native", "com.opera.mini.native:id/url_field"));
/*
Syntax: browsers.add(new SupportedBrowserConfig("browser_package_name", "browser_package_name:id/url_field"));
*/
return browsers;
}
& at res/xml/accessibility_service.xml
<?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
android:accessibilityEventTypes="typeAllMask"
android:accessibilityFeedbackType="feedbackAllMask"
android:accessibilityFlags="flagDefault|flagIncludeNotImportantViews|flagRequestTouchExplorationMode|flagRequestEnhancedWebAccessibility|flagReportViewIds|flagRetrieveInteractiveWindows"
android:canRequestFilterKeyEvents="true"
android:canRetrieveWindowContent="true"
android:notificationTimeout="0"
android:description="@string/accessibility_service_description"
android:packageNames="com.android.chrome, org.mozilla.firefox, com.opera.browser, com.opera.mini.native", "here..." />
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star!
Thanks again!
Distributed under the MIT License. See LICENSE.txt
for more information.
Arman Khan - ak2341776@gmail.com
Project Link - https://github.com/ArmanKhanTech/MindMaster
3rd Party Libraries