Image by Ilya Pavlov


Lock Me Out


6.4.0 (2021.06.12)

-Greatly improved accessibility service efficiency for decreased battery consumption
-Added option to lock screen when blocking
-Prevent rebooting during active lockouts as part of tamper protection
-Better website detection in split screen [started checking nodeInfoRoot of all application windows]
-Block user switching during active lockouts
-Added support for Adblock Browser
-Fixed being able to get into blocked Google Play by opening LMO from Locked Out screen then navigating back
-Fixed navigating home not always working when blocking Google Play
-Fixed not being asked for password during tamper protection if another LMO page already open
-Fixed usage statistics notification disappearing if LMO started during an active lockout
-Fixed time change backwards breaking app detection [Switched DAS away from System.currentTimeMilis] 
-Fixed split screen not being dismissed before showing Locked Out Screen
-Ignore detected “work profile” apps because they do not show up as installed and cannot be selected
-Fixed finding URLs in blocks of other text when searching entire page for blocked URL keyword (should be on its own without spaces)
-Don’t block URLs on Vivaldi’s choose search engine page
-Don’t block URLs when composing emails in Outlook
-Show Locked Out Screen after paying to end lockout from LOS but there are more lockouts
-Ignore case for detected text when checking for keywords in URL
-Removed limit on number of locations in free version
-Updated upgrade advantages text
-Added simplified Chinese translation, thanks Dwhite!
-Added Hungarian translation, thanks Stefi!
-Updated to Maps 17.0.1
-Reordered menu options
-Updated master password
-Updated to appcompat 1.3.0
-Updated to gson 2.8.6
-Updated to BillingClient 4.0.0

6.3.4 (2021.05.16)

-Fixed missing apps when getting installed apps
-Fixed website blocking in Opera Touch
-Fixed 12:00AM - 12:00AM lockouts not showing the time label
-Only allow disabling paid lockout ends in premium version

6.3.3 (2021.05.15)

-Fixed home and recents button not removing Locked Out screen
-Show more system apps
-Faster loading time for installed apps
-Keep asking for Accessibility Service permission if service is enabled but not running due to being killed or force stopped
-Fixed app usage monitoring resuming after screen off/on
-Fixed usage under a minute until screen off not being counted after unlocking or resuming app usage monitoring
-Don’t show emergency access when showing Locked Out screen because unable to detect apps
-Updated translations

6.3.2 (2021.05.02)

-Fixed emergency access becoming available after rotating when emergency interval is over a minute
-Fixed emergency access countdown not resetting when reaching 0s 
-Fixed lag when switching lists while apps are still loading
-Fixed loading icon disappearing when switching lists while apps are still loading

6.3.1 (2021.04.28)

-Fixed getting around Locked Out screen by double tapping on recents
-Improved efficiency
-Fixed rare crash when choosing apps
-Updated Japanese translation

6.3.0 (2021.04.26)

-Quicker, more accurate, and more efficient app detection using Accessibility Service permission
-Detect and block picture-in-picture windows like YouTube (requires Accessibility Service permission)
-Detect and block “Dual Messenger” (Samsung) / “Parallel Apps” (OnePlus) / “App Twin” (Huawei) apps (requires Accessibility Service permission)
-Minimize blocked pop-up views on Samsung (requires Accessibility Service permission)
-Block websites opened through “Preview page” in Chrome
-Added support for website blocking within KakaoTalk’s integrated browser
-Added support for website blocking within Outlook’s integrated browser
-Allow blocking chrome://flags
-Allow switching lists without waiting for list of installed apps to load
-Paying to end lockouts early configurable for each lockout
-Added more early end payment options
-Fixed flashing loop to get permissions when both draw over other apps and usage access removed
-Fixed lockouts starting or ending at the wrong time if scheduled for the skipped hour of daylight savings time change
-Only use final best location so don’t go in and out of lockout as accuracy gets better
-Added tamper protection for Motorola’s performance optimization page
-Allow setting any changes password if trying to enable tamper protection since could just decide to uninstall
-Hide keyboard when checking apps
-Added button to clear text boxes
-Clear current Google Play page when Google Play is getting blocked
-Don’t offer to end lockout early if changes denied due to starting soon
-Changed master password
-Fixed time remaining not being set on lockouts that were not visible until scrolled to
-Update usage rule start / end alarms with time change or time zone change
-Fixed animations possibly not working correctly if time changed
-Updated add URL button to be filled with color
-Fixed lock screen usage reminder wording
-Align checkbox drawable with checkbox if goes to multiple lines
-Increased minSDK to 23 (Android 6.0)
-Fixed rare crash when trying to rate app if don’t have Google Play installed
-Fixed email formatting

6.2.3 (2021.03.08)

-Improved app detection algorithm
-Fixed rare instances of high CPU usage when handlers that update time left in overlay or notification weren’t stopped
-Fixed rare crashes
-Moved dialog checkbox (I agree) out of scrollView so it’s always visible
-Link donate button straight to PayPal instead of showing DonateDialog

6.2.2 (2021.02.22)

-Improved app detection algorithm accuracy and efficiency
-Fixed crash when entering just http:// or https:// or www.
-Fixed being able to add duplicate websites
-Fixed usage enforcement time not animating and progress not appearing if usage rule starts while app already open
-Fixed usage up until pause not being counted unless it hit minute check
-Fixed last detected app racking up usage if screen left on while on the lock screen
-Fixed missing blocked apps icon on active lockout cards
-Fixed progress bar not updating after enabling usage rules until next minute check
-Fixed screen time related progress bars not updating when unlocking screen until next minute check
-Added blocked app icon to Locked Out screen
-Only allow Google Play for purchases while LMO open if it’s the only detected app, so that Play can’t be opened up in “pop-up” view over LMO
-Show more than 2 detected apps in pop-up toast
-Added multiple lockout names to Locked Out notification title
-Added cannot afford dialog
-Check for usage access when enabling usage monitoring or show detected app
-Changed snackbar color to darker red for better visibility
-Added Czech translation
-Updated Japanese translation
-Added Lock Me Out item name to PayPal donation link

6.2.1 (2021.02.08)

-Fixed crash when selecting apps excluded from monitoring
-Fixed rare crash when leaving choose location dialog before map is ready

6.2.0 (2021.02.07)

-Allow otherwise prohibited changes with a password
-Added new welcome dialog
-Added progress indicator to usage rules
-Long press individual settings for more info
-Pause usage monitoring until app changes instead of until screen turns off
-Fixed locations not being saved properly for usage monitoring at specific locations
-Fixed various bugs with modifying lists of the same name for other lockouts
-Fixed being asked for a entry password right after setting it
-Fixed locked out screen opening last open EditLockoutActivity instead of the lockout requested
-Fixed blocking URL when a lockout starts even after browser has been closed
-Fixed locked out screen possibly not taking up full screen after rotation on some devices
-Only prevent adding excluded apps if there are active total screen time usage lockouts
-Prevent changes during usage enforcement by default
-Default to emergency wait time of 2 min
-Do not block settings as a blocked app or for tamper protection if getting missing permissions (overlay and usage access)
-Don’t fill width when showing locked out screen in landscape mode
-Added FireFox Nightly browser
-Request usage access and overlay permission when enabling lockouts instead of right away
-Require usage access if there are current usage rules
-Open app in addition to showing toasts when overlay/usage access (for usage rules) permissions missing. In case notifications are disabled, toasts won’t show. Missing usage access during lockouts still shows locked out screen with the messaging there.
-Block changing language for tamper protection
-Added Swedish to tamper protection checks
-Update service with fresh location from ChooseLocationsDialog
-Only look for blocked websites if a lockout is starting soon or active
-Moved password fields in dialogs above message so you don’t have to scroll to get to them
-Fixed not being able to remove hide from recents during active lockouts even with tamper protection password
-Stop removing overlay automatically when un-blocked app opened behind overlay. It was causing issues with LOS being removed when it shouldn’t, like after blocking YouTube and getting minimized into overlay window
-Clear timeLastLocked when changing usage rule type. That way any previously set timeLastLocked won’t unnecessarily apply to the new usage rule type, but will still be set by service if it were to cause an immediate lockout
-Made tapping on highlighted words easier
-Added messaging to early exit page
-Removed enforce lockout’s DND setting option
-Automatically remove last slash from entered URLs
-Added hint text for URL keyword blocking
-Fixed ending lockout early not working from EditLockoutActivity while hide from recents checked (PEA disappearing)
-Fixed not hiding from recents when PaidExitActivity opened from LOS
-Fixed multiple starts of payment flow if resuming PEA
-Fixed service stopping itself after activity unbinds due to a previous call to stopSelf even though a one-time lockout was just started
-Don't allow unchecking hide from recents during lockout’s usage enforcement, or if tamper protection is on
-Only lock and turn screen off if no prohibited password changes set (already required emergency access and paid exits to be off)
-Fixed possible crash if no default launcher set
-Allow all launchers if no default set
-Don’t look through listLockouts for blocked URLs until after we know we’re in a browser instead of the other way around
-Don’t allow turning off usage based lockouts if it has triggered a lockout so it can be ended early with payment or turned off with password
-Show lockout title in Locked Out notification title
-Update lockout list summaries when list names are changed or removed through the one-time lockout choose apps dialog
-Update app lists on ELA when updated by pending change when lockout ends
-Don’t show I understand checkbox when asking for accessibility permission
-Added Japanese translation (Thanks mamarama9904!)
-Removed French, Czech translations
***-Updated to newest BetterLinkMovementMethod and modified the touch area***

6.1.0 (2020.12.19)

-Only count toward usage limit at chosen locations
-Limit duration of usage based lockouts to the end time of usage enforcement
-Fixed entering without entry password by tapping on lockout card followed by header icon very quickly
-Fixed not detecting time change or force stop settings pages in Arabic
-Added support for Via Browser, Free Adblocker Browser, and LineageOS Jelly Browser
-Allow non-current launcher to be blocked
-Only resort to checking whole page for URL if don’t have a previously detected URL
-Fixed background location checking not working on Android 11 without accessibility service enabled. Ask for background location access as foreground location service no longer enough to get updates when service started from the background
-Added simplified Chinese translation, thanks Dwhite!
-Show blocked website and not keyword when blocking keyword in URL
-Added End Early button to changes not allowed snackbar message on Edit Lockout page, if paid exits enabled
-Tapping on black background closes the locked out screen
-Only show animating padlocks if lockout is at lockout location
-Check location when changes made to lockout’s locations
-Fixed not checking for location for out of location lockouts if keep opening locked out screen
-Fixed leaving lockout as location specific when removing location specificity during active in-location lockout
-Added required explanation dialog when requesting background location permission on Android 11
-Check location permissions from service
-Changed ideal location freshness from 1 minute to 30 seconds
-Added description to scheduled lockout card
-Close locked out screen when there are no more active lockouts due to a lockout going out of location
-Don’t navigate home when blocking websites
-Don’t count launcher open when navigating home right before showing locked out screen
-Removed brackets from usage percentage in pop-up
-Updated master password
-Updated to play-services-location:17.1.0
-Updated to billing library 3.0.2 3.0.1 Fixes a bug with app being killed during purchase flow
-Updated BillingManager (2020.12.11) to notify billing listener when there’s an error in querySkuDetailsAsync or consumeAsync
-Moved initialization of BillingManager to onStart and destroying to onStop to prevent multiple activities that are still in memory getting callbacks

6.0.9 (2020.09.24)

-Fixed crash on Android 11 before device unlocked for the first time

6.0.8 (2020.09.21)

-Fixed rare bug causing very high usage after system time changes
-Fixed long lockout title overlapping lockout icons
-Update time last auto locked for usage rules after time change so that changing time doesn’t start another lockout 
-Update pending app lists after time change
-Reset reset alarm after time change
-Made default lockout mode for new lockouts blocked apps mode
-Made default usage rule for new lockouts time spent in apps
-Restored compileSdkVersion to 30 (Android 11)

6.0.7 (2020.09.09)

-Fixed a bug where duration based lockouts were rescheduled into the future after reboot instead of continuing

6.0.6 (2020.09.02)

-Added Arabic translation (Thanks Ammar!)
-Added support for RTL layouts
-Updated website blocking for Firefox
-Fixed missing apps in app lists on Android 11: added QUERY_ALL_APPS permission
-Increased margins on About dialog to match other dialogs
-Fixed not unregistering receiver in DetectionAccessibilityService on Android < N
-Updated translations

6.0.5 (2020.08.26)

-Fixed loading selection not working on first try
-Fixed permission required dialog for accessibility when it's already on
-Don’t ask for accessibility permission when opening choose urls dialog without checkbox checked
-Don’t ask for entry password when rotating
-Don’t show close button on locked out screen if unable to detect apps
-Don’t show change not allowed messaging when disabling blocking websites after pressing cancel on accessibility required dialog
-Moved add lockout buttons to top of lists
-Added Romanian translation (Thanks LMG!)
-Built for Android 11

6.0.4 (2020.08.22)

-Animate appearance / disappearance of lockouts on locked out screen
-Added close button to locked out screen unless lock screen only lockout
-Fixed possibly corrupted usage statistics from 6.0.3 update
-Fixed crashes due to index out of bounds in updatePendingListsForLockoutsAndUsageRulesOrSetAlarmsTo
-Updated French translation

6.0.3 (2020.08.19)

-Added French translation (thanks ppp!)
-Fixed apps getting stuck as detected on some devices after split screen
-Prevent pop-out windows showing over LMO on Samsung devices
-Fixed app being killed while getting permissions when hide from recent apps selected
-Navigate home when blocking so background video/audio stops
-Animate appearance / disappearance of locked out screen
-Animated time range if enforcement active, and lock icons if lockout is active
-Fixed tamper protection showing when “time zone” detected outside of settings
-Faded out colors for icons/text for disabled lockouts
-Fixed showing locked out screen when adding or starting lockout, or when emergency allowance ends, or when unlocking screen while in LMO with lock screen only lockout
-Restart Settings if blocked on all Android versions instead of just 8+
-Removed extend button
-Red snackbar background to make them more obvious
-Fixed dragging lockout dropping from drag when lockouts updated by service
-Record full amount of time for each open app when showing multiple apps or else could use it to double usage in split screen
-Show clock time on active lockout card in addition to time remaining
-Colored ockout cards on locked out screen red
-Re-inflate and initialize views every time overlay shown to apply any font changes
-Fixed start receiver not setting alarms on LOCKED_BOOT_COMPLETED
-Added confirmation dialog to uninstall menu item
-Used same resource in nav drawer for icon as in locked out screen as it could have been shaped differently on different devices!
-Register service for TimeZoneChanged and TimeChanged broadcasts as they happen instantaneously that way and could be quite delayed on some devices otherwise
-Update time references and lockout times when time manually changed so it doesn’t mess up statistics and lockout durations
-Increase size of day picker toggle buttons with text size by making the ToggleButton’s layout’s size sp (not changing the size in the shape drawable)
-Updated to appcompat 1.2.0
-Added links to changelog and translators into about dialog and onto website

6.0.2 (2020.07.23)

-Improved website blocking
-Added Spanish translation (Thanks Nicolás!)
-Fixed not being able to toggle emergency allowance button back on without restarting
-Fixed uninstall protection on Huawei phones
-Fixed apps possibly getting stuck as detected
-Fixed interrupted but successful paid exit not ending lockout
-Fixed using back button closing app when hide from recents is selected
-Don’t reset averages automatically
-Layout tweaks
-Fixed large margin on DND switch
-Fixed finishing payment not closing payment activity if still have active lockouts
-Added Firefox beta, Firefox Focus, Spin browsers, Samsung beta browser
-Don’t navigate home when going back from locked out screen after blocking website
-Detect whole words for settings protection
-Fixed being able to select more than 10 free apps by searching
-Improved tamper protection by also going back (faster for slow phones)
-Added Spanish store description
-Set all dialog titles to gravity center so that if it goes to 2 lines the text is still centered
-Updated BillingManager 2020.07.02
-Updated app detection method with hashMap

6.0.1 (2020.06.23)

-Fixed crash when choosing excluded apps for the first time
-Fixed being able to go home during lockscreen only lockout
-Fixed emergency access number of seconds not showing seconds once past a minute
-Hide from recent apps even when not in lockout [ask for tamper protection password if want to change it]
-Fixed not hiding from recent apps when using back button
-Fixed asking for tamper password letting you into settings without entry password
-Added Samsung browser
-Added Russian, Czech and Turkish translations
[-Added singular “location”]
[-Made admin receiver show message when trying to disable]
***[-Updated to billing library 3.0.0]***

6.0.0 (2020.06.15)

-Start lockout while scheduling even if current, instead of tomorrow

-Allow changes during lockouts if more strict

-Fixed blocking apps in “pop-up" windows and split screen on Samsung devices

-Redesigned Locked Out screen

-Added button to extend active lockout 10m

-Only block URLs found in the browser’s URL bar, not anywhere on the page

-Start immediately after boot before first unlock

-Prevent changes to excluded apps

-Many other fixes and improvements

[-Don’t block if blocking, except if it doesn’t contain . ,and so acting more like a keyword within urls]

[-Fixed being able to clear a list during lockout if not using a named list]

[-Show lockout name for usage-based lockout notifications]

[-Don’t apply change instead of disabling lockout when answering no to warning dialog]

[-Fixed changing saved list not updating the same lockout’s other lists]

[-Pay to end individual lockouts]

[-Fixed being able to change an app list for another lockout using the same list during prevent changes time]

[-Fixed incorrect percentage in pop-up after first unlock]

[-Fine tuned all layout margins]

[-Fixed showing 247 usage rules warning from OptionsActivity even if the usage rule wasn’t enabled]

[-Make sure usage window is longer than screen usage limit by increasing it to the limit +1 min]

[-Allow changes to usage monitoring and preventChangesDuringUsageEnforcement if usage lockouts not enabled]

[-Reordered usage rules in ELA]

[-Allow changes to switchLockRegularly and switchUsageLockouts if originally unchecked]

[-Removed android:gravity=”fill” from RadioButtons with a drawable (lockout mode) so that if it goes to 2 lines the drawable is still centered with the radio button circle. We use fill to have the first line stay in line with the checkbox/radio button but the drawable for the radio button doesn’t seem to follow suit]

[-Stop showing price on end early button]

[-Hide keyboard when picking an app (after searching)]

[-Made toggle buttons’ week letters gray when lockout disabled in miniLockout card]

[-Set LOA as a singleTask so that tapping on notification still brings up LOA instead of main app if app left in memory when originally opened through LOA as root]

[-added Intent.FLAG_ACTIVITY_CLEAR_TOP when launching activities from LOA or notifications so that it removes other activities that might have been on top when the task with the requested activity is brought forward]

***[-Capitalized all titles]***

[-Go back when blocked website found so you can actually return to the browser and go to a different website]

[-Fixed not getting locked out of website if lockout starts or emergency access ends while on blocked website without touching]

[-Fixed not getting locked out of website if scrolled down past address bar during emergency access]

[-Fixed deleting blocked websites from list messing up]

[-Fixed changing a named list affecting already enabled one-time lockouts]

[-Shortened time pop-up with usage is shown]

[-Fixed overactive accessibility service]

[-Set LOA to not support split screen]

[-Tweaked layout margins/padding for all dialogs to line up with buttons]

[-Go back to clearing saved list name when using the deselect button]

[-Increased max emergency access time to 300s and num unlocks, app launches to 300]

[-Changed wording for option to show emergency access to signify the second number is a wait time]

[-Prevent checking show pause button if changes are denied to usage rules]

[-Expand One-time lockout mode & options at the same time to clean up UI]

[-Show black overlay on older Android versions as well to protect against “app pinning”]

[-Only go to home screen when pressing back from LOA so that emergency and early exit bring you back to blocked app]

[-Fixed check for max number of enabled lockouts to take into account if scheduled lockouts and usage lockouts are enabled overall. Also check the number when switching scheduled lockouts/usage lockouts on and when entering ELA and disable them then]

[-Don’t reset last time auto locked if changes denied to usage rule when removing excluded apps]

[-Sort lists alphabetically in spinners]

[-Fixed changing a list from SA not updating lists for usage rules]

[-Show number of blocked/allowed/monitored apps / websites / locations]

[-Delete named list by saving the selection without the name instead of saving as empty list with name]

[-Fixed uninstalled apps not showing in saved lists]

[-Clear listsToChangeTo whenever making an allowed change]

[-Made title of ELA “Edit Lockout”]

[-Added master password for forgotten passwords]

[-Don’t show one-time lockout locking mode icon if no blocked apps]

[-Removed ACCESS_BACKGROUND_LOCATION permission from manifest since we don’t need it with foregroundServiceType=”location”]

[-Added action buttons back to side menu as well (we already had go premium)]

[-Added a sixth payment level of $99.99 and re-organized choices into 2 columns of 3]

[-Show what’s being blocked / allowed in usage summary/usage reminder/locked out notifications]

[-Show what it’s blocking/allowing in usage rule summary]

[-Added Chrome Beta to blocked browsers]

[-Stop locking out to the lock screen if keep trying]

[-Changed to locked out screen being shown through overlay instead of activity]

[-New icon for location markers]

[-Added white stroke for unselected locations]

[-Fixed z-order: selected marker and circle now on top]

[-Set stroke width according to screen density]

[-Better protect against removing essential permissions during lockout (since we can’t reliably detect usage access and draw over other apps screens with accessibility service)]

[-Show toast message and take them to re-enable when overlay permission missing]

[-Show locked out screen when trying to disable Device Admin or Accessibility Service when caught by Accessibility Service during lockouts]

[-Removed internet permission]

[-Prevent access to LMO’s running services page through accessibility]

[-Prevent changing time through accessibility]

[-Prevent autoBackup by setting android:allowBackup=”false” so that reinstalling doesn’t restore their data. Makes it more annoying to uninstall and may prevent other crashes from updating from really old versions?]

[-Added “” media storage app to global whitelist. Needed to pick ringtones on some devices?]

[-Put AccessibilityService in its own process so that activities/IAB can be cleared from memory]

[-Added detection of usage access, display over other apps (overlay) permissions, and app info page]

[-Gave each usage lockout its own notification ids for reminder and locked out]

[-Dismiss usage reminder notifications once their lockout starts or when the usage goes back under]

[-Dismiss usage locked out notifications once their lockout is over]

***[-Changed Upgrade dialog to use drawables instead of unicode so it doesn’t look different on diff devices]***

***[-Show apps without launch intents (without launcher icons) and without blank icon in app lists even if not a system app. Needed for add-on packs like Captcha Pack for Sleep as Android]***

***[-Keep app icons blank for uninstalled apps when scrolling]***

***[-Updated billing library to 2.2.0]***

***[-Fixed Utils.startEmailIntent line breaks not working by switching from \n to <br>]***

***[-Changed app detection method to hopefully prevent apps getting stuck as detected (happened to Teri and Jyotister)]***

***[-Added no thanks button to Upgrade/Donate dialogs (need to show a clear way out of a payment dialog)]***

***[-Capitalized button text for payment options / donate button]***

***[-Link to rate dialog from menu so they get the messaging first. Updated messaging]***

***[-Save last time upgrade dialog shown and use that for auto showing time]***

***[Moved upgrade dialog auto show to onSkuDetailsResponse so that listSkuDetails is ready in SA]***

***[-Changed email to send to (“forward” email account on netfirm’s email settings)]***

***[-Made button in DonateDialog link to PayPal donation instead of IAP (donations are listed as not supported by IAP here: )]***

***[-Consolidated method to detect foreground package names depending on Android version into Utils]***

***[-Start in “direct boot mode” before first unlock by adding tag to manifest and moving shared prefs, and adding intent filter for StartReceiver]***

***[-Updated ObscuredSharedPrefs to move shared prefs to device encrypted storage so app can start before unlocking in direct boot mode and PreferencesProvider for change in OSP constructor]***

***[-Updated BillingConstants, IabService and activities to use arrays of skus rather than checking each one]***