[APP][TEQTIC][4.1+] KinScreen - Most advanced screen control

Search This thread

Zaxx32

Senior Member
Mar 23, 2019
618
228
Morgantown
Moto G5 Plus
Moto G7
Luv ur work bud. Just a few apps plus 2 of yours and I think at max. battery efficiency for my phone/setup!

KinScreen
Leandroid
Greenify (Paid )
LSpeed
...and ofc root access.

Once you get 'em all dialed in, workin' well together and with the OS...awesome battery time. Takes some time & effort but soo worth it with an old 3000mah Moto G5+, Magisk rooted on stock Oreo.;)
 
Last edited:

rogerinnyc

Senior Member
Feb 1, 2006
340
142
OnePlus 9 Pro
KinScreen (purchased version) is always among the first app I install on new phones, but I've run into a problem with my LG G8 (android 9) in that the turn off by covering proximity sensor doesn't seem to work (I've tried both the default 10 seconds and a shorter, 3 seconds). With the app in the foreground, if I cover the sensor, the indicator goes red showing that the proximity sensor is covered, but the time out instead follows the regular system time out of 30 seconds (which I set by KinScreen). On the other hand, KinScreen's keeping the screen alive by a wave over the proximity sensor does work, so I'm stumped as to the problem (KinScreen does have access to modify system settings). Any thoughts?
EDIT: Installed GravityScreen (also purchased version) and it fully works with the proximity sensor to turn off my phone (e.g., face down), but I suspect that's because it's combined with an angle/motion sensor too? Or is it because it uses the accessibility settings?
 
Last edited:

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
Luv ur work bud. Just a few apps plus of yours and I think at max. battery efficiency for my phone/setup!

KinScreen
Leandroid
Greenify (Paid )
LSpeed
...and ofc root access.

Once you get 'em all dialed in, workin' well together and with the OS...awesome battery time. Takes some time & effort but soo worth it with an old 3000mah Moto G5+, Magisk rooted on stock Oreo.;)

Thank you! Make sure to leave a review on Google Play if you haven't already, it really helps.

KinScreen (purchased version) is always among the first app I install on new phones, but I've run into a problem with my LG G8 (android 9) in that the turn off by covering proximity sensor doesn't seem to work (I've tried both the default 10 seconds and a shorter, 3 seconds). With the app in the foreground, if I cover the sensor, the indicator goes red showing that the proximity sensor is covered, but the time out instead follows the regular system time out of 30 seconds (which I set by KinScreen). On the other hand, KinScreen's keeping the screen alive by a wave over the proximity sensor does work, so I'm stumped as to the problem (KinScreen does have access to modify system settings). Any thoughts?
EDIT: Installed GravityScreen (also purchased version) and it fully works with the proximity sensor to turn off my phone (e.g., face down), but I suspect that's because it's combined with an angle/motion sensor too? Or is it because it uses the accessibility settings?

LG phones seem to have an issue with setting short timeouts. What's the minimum value you can set in the system settings? Try that value in KS and see if it's able to at least go down to that. And of course make sure you aren't touching the screen at all while you cover the sensor. On all phones, the system will keep the screen on a certain minimum from the last time it was touched. GravityScreen actively turns the screen off using device admin/accessibility. You'll notice the screen probably also locks and you can't use the fingerprint sensor to unlock. Can you confirm?
 

rogerinnyc

Senior Member
Feb 1, 2006
340
142
OnePlus 9 Pro
LG phones seem to have an issue with setting short timeouts. What's the minimum value you can set in the system settings? Try that value in KS and see if it's able to at least go down to that. And of course make sure you aren't touching the screen at all while you cover the sensor. On all phones, the system will keep the screen on a certain minimum from the last time it was touched. GravityScreen actively turns the screen off using device admin/accessibility. You'll notice the screen probably also locks and you can't use the fingerprint sensor to unlock. Can you confirm?

Thanks for the quick reply. 15 seconds is the minimum and it appears the KS works at that time setting, but honestly that isn't good enough when you're putting the phone in your pocket. GS has a "smart lock" setting that actually doesn't require giving device admin privileges, but does require accessibility, and fingerprint unlock continues to work. I think maybe it blacks out the screen (so no reaction to taps) and then relies on normal lock time, maybe?
 

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
Thanks for the quick reply. 15 seconds is the minimum and it appears the KS works at that time setting, but honestly that isn't good enough when you're putting the phone in your pocket. GS has a "smart lock" setting that actually doesn't require giving device admin privileges, but does require accessibility, and fingerprint unlock continues to work. I think maybe it blacks out the screen (so no reaction to taps) and then relies on normal lock time, maybe?

It's possible, I'll look into it. Another advantage of doing a regular timeout vs active turn off is that covering the proximity sensor by mistake won't turn the screen off in an app that's actively keeping the screen on itself (for example, watching videos, playing games).
 
Last edited:

ri0thamus

Member
Dec 13, 2018
33
5
Winchester
I've only used the free version before for turning the screen on with my Pixel 3. I have an s10e now and have the opposite problem. The darn thing won't turn off in pockets or face down because the proximity sensor only works during phone calls. I tried gravity screen which works great but seems to always bypass the lock (PIN and fingerprint) or always requires a PIN to unlock depending on the setting I pick. Does kinscreen (either free or paid) have turn off options that don't include the proximity sensor and might play better with my phone's lockscreen settings?
 

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
I've only used the free version before for turning the screen on with my Pixel 3. I have an s10e now and have the opposite problem. The darn thing won't turn off in pockets or face down because the proximity sensor only works during phone calls. I tried gravity screen which works great but seems to always bypass the lock (PIN and fingerprint) or always requires a PIN to unlock depending on the setting I pick. Does kinscreen (either free or paid) have turn off options that don't include the proximity sensor and might play better with my phone's lockscreen settings?

No, unfortunately the quicker time outs are all based on proximity sensing. In fact, KS never actively turns the screen off at all. If another app is keeping the screen on, it will stay on. It's a real shame the proximity sensor is limited on these new Samsungs. What's worse is it shows the sensor as available but it just doesn't work. Can you try and see if turning off the ambient display fixes it? Someone wrote in claiming there was a correlation there, but I haven't confirmed it.
 

ri0thamus

Member
Dec 13, 2018
33
5
Winchester
No, unfortunately the quicker time outs are all based on proximity sensing. In fact, KS never actively turns the screen off at all. If another app is keeping the screen on, it will stay on. It's a real shame the proximity sensor is limited on these new Samsungs. What's worse is it shows the sensor as available but it just doesn't work. Can you try and see if turning off the ambient display fixes it? Someone wrote in claiming there was a correlation there, but I haven't confirmed it.

So I figured it out and I feel like an idiot. I had facial recognition on. The darn phone was doing exactly what it was supposed to. I've never had it or turned it on before on previous phones so I didn't recognize what it was doing. Whoops. ?
 

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
So I figured it out and I feel like an idiot. I had facial recognition on. The darn phone was doing exactly what it was supposed to. I've never had it or turned it on before on previous phones so I didn't recognize what it was doing. Whoops.

Hmm, so in the end the proximity sensor does work? Is it responsive if you open up KinScreen and check the proximity status at the top while you wave over the sensor?
 

ri0thamus

Member
Dec 13, 2018
33
5
Winchester
Hmm, so in the end the proximity sensor does work? Is it responsive if you open up KinScreen and check the proximity status at the top while you wave over the sensor?

No, the proximity sensor does not work except in the call. When I was referring to the phone acting as it should I was referring to the use of the Gravity Screen app. Kin screen only works with the motion features on the S10e, not the proximity. The proximity status will blink if I touch my hand to a large portion of the screen. but that doesn't help with pockets or laying face down.
 

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
No, the proximity sensor does not work except in the call. When I was referring to the phone acting as it should I was referring to the use of the Gravity Screen app. Kin screen only works with the motion features on the S10e, not the proximity. The proximity status will blink if I touch my hand to a large portion of the screen. but that doesn't help with pockets or laying face down.

Weird, so it detects proximity if a large portion of the screen is touched? Based on what sensors do you have GravityScreen set to turn the screen off?
 

ri0thamus

Member
Dec 13, 2018
33
5
Winchester
Weird, so it detects proximity if a large portion of the screen is touched? Based on what sensors do you have GravityScreen set to turn the screen off?

Yes, Kinscreen shows proximity if I touch a large portion of the screen when the app is active (turned on). I have Gravityscreen set to turn off when the phone is upside down up to 60 degrees (top of the phone pointed to the ground) and also when flipped face down on a flat surface. Gravityscreen also has some turn on by motion options and those are working well enough that I don't currently use Kinscreen.
 

AHershler

New member
Dec 12, 2007
4
1
@Flyview: really awesome app! I do want you to know I am one of those people using an Android phone without a Google account. I would love to be able to pay in some other way to unlock the more advanced features, but my requirement would be for a payment solution that doesn't require me to pay using the phone and/or doesn't require the app to have access to the Internet for periodic verification (i.e. allowing payment through PayPal and receiving a license file by email so it can be copied to the phone).
I read through all 68 pages here so I know a few people have asked for this before and that you do not currently offer this. I also realize this is not trivial to implement. And we're a small minority. Just wanted to bring it up again.
Thank you!
 
  • Like
Reactions: Flyview

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
New update out on XDA Labs and Google Play!

5.5.2 (2020.01.23)
-Made “Manual toggle” status clickable in the app
-Added split screen support to app detection
-Reset manual toggle when service switched off manually
-Show selected apps first in choose apps dialog
-Added www.dontkillmyapp.com warning in-app
-Updated look of nav menu title
-Fixed widget size to be 1x1
-Increased text size
-Fixed analyzing angle from accelerometer sensor if not using angle features
-Updated Dutch translation (thanks Sjaak)
[-Reordered statuses to have manual toggle first]
[-Built for Android 10]
[-Always re-register proximity sensor to help it not get stuck]
***[-Added { *; } to end of “-keep class com.android.vending.billing.**”]***
***[-Disabled ok button until list of apps is ready to prevent concurrent modification exception]***
***[-Fixed onPostExecute crash in ChooseAppsDialog if pressing cancel before app loading finishes, or if rotating before it finishes…]***
[***Check for first time open before doing updates in StartReceiver***]
***[-Make serviceMessenger and listServiceMessageRunnables null in unbindService calls]**
***[-Changed to a new method in hasUsageStats method so that it works right after screen on (getPackageNameLastInForeground doesn’t work for about 2s after screen on)]***
***[-Put queryPurchases in onResume for all activities so that it’s properly recognized if rotated during purchase]***
***[-Fixed incorrect # free trial days. Change in onSkuDetailsResponse]***
-***[Updated Google Play Billing API from 1.2 to 2.1. This includes changes to BillingManager and each activity that deals with making purchases in startPurchase(), onSkuDetailsResponse (added listSkuDetails) and onPurchasesUpdated (added “acknowledging” purchase)]***
***[-Got rid of mapSkuPrices and mapSkuTrialDays]***
***[-Align “I understand” checkbox on the right]***
[-Changed to Rate on Google Play instead of Rate on Google Play store]
 

Flyview

Senior Member
May 17, 2010
2,557
1,675
Toronto/San Diego
It looks like KinScreen might be having some trouble on Samsung's Android 10. I've had a couple of people report problems with it it not being able to keep the screen on. Can anyone confirm? Better yet, anyone in southern California that would let me debug using their Samsung running Android 10?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 63
    Introducing KinScreen:




    Do you find yourself poking your screen to keep it from turning off? Want to turn your screen on without the power button? KinScreen automatically keeps your screen on while you're using your phone, but turns it off more quickly when you aren't to save battery power.

    Please check www.dontkillmyapp.com to make sure KinScreen is able to run in the background!


    Brief Overview
    • Turn screen on
    - with a wave
    - by tilting up
    • Turn screen off
    - by covering screen (pocket, face down)
    - by tilting down
    • Keep screen on
    - while holding phone (motion or tilt)
    - by waving over screen
    - while using specific apps
    - while on a call
    - while charging
    - indefinitely via widget, QuickSettings, or notification manual toggle
    • Set a separate timeout for the lock screen
    • Set a maximum time to keep the screen on
    • Works in the dark unlike Samsung's Smart Stay
    • No ads

    Originally released in 2014, KinScreen is continually being improved based on user feedback and feature requests.

    Install now and forget about keeping your screen on! Once you understand its capabilities, you will immediately notice it missing on a new device!
    Customer service is a top priority at TEQTIC. If you experience an issue, please use the "Contact support" menu option inside the app or email kinscreen@teqtic.com before leaving a negative review! We usually reply to all emails within 48 hours, and often much quicker.

    Detailed Overview
    Turn screen on with gestures

    Save the wear and tear on your power button by using gestures to turn the screen on. You can use KinScreen to turn the screen on via the proximity sensor or by lifting the device up. Uncovering the sensor allows you to pull your phone out of your pocket and have the screen turn on automatically. Waving over the sensor works great when your hands are dirty! You may also set a tilt angle that turns the screen on when the phone is lifted up.

    Keep screen on automatically
    Choose from various methods to detect use of the device and keep the display on. The motion method detects small movements from you just holding the device. Waving over the proximity sensor is another method that optionally extends the timeout. The tilt angle method allows the display to stay on when propped up, even when you aren't holding it. You can also choose to have the display stay on while using certain apps, while charging, or while on a call (display still turns off when you put the phone to your ear).

    Time screen out quickly to save battery
    You can choose the screen timeout when no keep-on rules are actively keeping the screen on. If the screen isn't being kept on, it should time out quickly to save battery power. The timeout can be even shorter when the proximity sensor is covered (in-pocket or face down), or when the device is pointed down. You can also set a separate timeout for the lock screen. KinScreen will not turn the screen off when other apps are keeping the screen on, unless you have selected to actively turn the screen off.

    Resource Use
    KinScreen is designed to be as efficient and battery friendly as possible. It uses little CPU and RAM, and sensor use is highly optimized. Some functions use more power than others. The proximity sensor may use noticeable power on some older devices, but is negligible on most modern devices. Turn-on-by-tilt-angle will use significant battery power because it needs to keep the device awake in order to work. You may use the configurable exceptions to limit the time this function is in use.

    Premium Version
    The settings are highly customizable to your taste. Fine-tuning of parameters is locked in the free version. Please upgrade to premium to fully unlock these features and support future development!

    DOWNLOAD:
    Google Play
    TEQTIC website (scroll to the bottom)

    CHANGELOG:

    6.0.9 (2022.03.08)

    -Fixed tilt angle calibration not going to 0
    -Don’t temporarily increase timeout by proximity while kept on by motion or while being kept bright indefinitely
    -Show toast messages when timeout temporarily increased or reset
    -Allow searching through apps while installed apps list still loading
    -Show name of app or number of apps instead of “these apps”
    -Show more installed apps
    -Fixed a rare crash on Huawei devices
    -Fixed some rare crashes
    -Added Hungarian translation (thanks Stefi!)
    -Added Indonesian translation (thanks jquarks!)
    -Added Polish translation (thanks TheGame!)
    -Updated translations

    6.0.8 (2021.07.21)
    -Reverted to preferring the rotation sensor because of issues with the gravity sensor on the Pixel 2 and some Samsung devices
    -Fixed turning on by angle even when manually turned off on devices without a gyroscope
    -Show more system apps
    -Reduced landscape detection from 30deg to 20deg
    -Flash proximity status green when waving to keep screen on
    -Temporarily extend timeout by proximity even if kept on by something else
    -Fixed rare crash when trying to rate app if don’t have Google Play installed
    -Prevent crash on some Samsung devices
    -Fixed rare crash before user unlocked
    -Reduced wave time from 1000ms to 500ms
    -Do not reacquire on Samsung Android 9 and lower
    -Updated to appcompat 1.3.0
    -Updated to gson 2.8.6

    6.0.7 (2021.03.26)
    -Fixed timeout of 1s possibly keeping screen on forever on Samsung Android 10+ devices
    -Fixed flickering with timeouts of 1s on Samsung Android 10+ devices
    -Hide clear text button when search field empty

    6.0.6 (2021.03.25)
    -Fixed screen possibly turning off when screen allowed to dim on Samsung Android 10+ devices
    -Fixed accelerometer possibly not being unregistered when service destroyed
    -Check previous 8 hours for foreground app instead of 4

    6.0.5 (2021.03.24)
    -Fixed flickering on Samsung Android 10+ devices
    -Fixed timeout of 1s possibly keeping screen on forever on Samsung Android 10+ devices

    6.0.4 (2021.03.19)
    -Use gravity sensor instead of rotation sensor for better efficiency and compatibility
    -Detect negative angle on devices without a gyroscope
    -Improved app detection algorithm accuracy and efficiency
    -Fixed not detecting app when opening another activity of the same name
    -Dim screen as soon as beginning to turn off due to proximity or angle, instead of brightening screen first
    -Don’t brighten screen if already dimmed when coming out of a keep on condition
    -Fixed incorrect angle if swinging during sensor registration [check against accelerometer and re-register]
    -Better detect tilting up right after screen off
    -Allow any keep-on trigger to reset max time during dim time, not just motion
    -Fixed not resetting max time when new motion detected without allow dimming on
    -Fixed keep on by motion whether or not selected, when using accelerometer for angle
    -Fixed acquiring an unnecessary wakelock on Samsung Android 10+
    -Fixed not being able to keep the screen on indefinitely on Samsung Android 10+ lock screen
    -Possibly fixed freezing angle on Samsung Android 11
    -Fixed QuickSettings toggle not being updated after screen off until second swipe down
    -Fixed angle sensor unregistering when unchecking keep on by motion or its exception when turn off by angle still checked
    -Fixed enabling turn off by angle not registering angle sensor, when using accelerometer for angle
    -Calculate tilt angle the same way irrespective of on-screen orientation (except reverse portrait)
    -Require tilting back down to 15deg before turn on by angle works again
    -Animate toggling of statuses
    -Hide keyboard when checking apps
    -Show detected angle/proximity even if only using turn on by angle/proximity
    -Briefly show full star in notification icon when brightening screen
    -Reorder list after clearing search so checked apps show up at the top
    -Added button to clear search
    -Fixed not restoring regular timeout when no longer timing out due to proximity and not kept on by anything else
    -Don’t acquireWakelocks for keepOnByProximity when going into or out of proximity unless there was a wave
    -Reset wave-over extension when setting a new timeout
    -Set exact alarm for turnOnByAngle max time exception
    -Added French, Japanese translations
    -Link donate button straight to PayPal instead of showing DonateDialog
    -Added KinScreen item name to PayPal donation link
    -Updated to newest BetterLinkMovementMethod and modified the touch area
    -Changed to BetterLinkMovementMethod for About dialog links
    -Fixed email formatting

    6.0.3 (2020.12.19)
    -Allow angles higher than 0 for tilt under to turn off
    -Added Arabic translation (Thanks Soontaek!)
    -Added German translation (Thanks Daniel, pepeq, Oswald, Stefan!)
    -Added Lithuanian translation (Thanks Andrius!)
    -Removed incomplete French translation
    -Updated other translations
    -Updated to billing library 3.0.2
    -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.2 (2020.11.10)
    -Fixed rare crash when starting service before unlocking device without modify system settings permission
    -Added Portuguese translation (Thanks Adalberto and Ronan!)
    -Added Italian translation (Thanks Giorgio and Rafa!)

    6.0.1 (2020.11.02)
    -Fixed actively turn screen off not using correct timeout
    -Allow 0s timeouts
    -Don’t show short timeout warning if using actively turn screen off option
    -Updated Spanish, Catalan translations. Thanks Rafa!

    6.0.0 (2020.11.01)
    -Added turn-on-by-tilt-angle function
    -Added tilt angle exception for turn-on-by-proximity
    -Added turn-off-by-tilt-angle function
    -Added option to actively turn screen off as opposed to just timing out (Android 9+). Accessibility method does not interfere with fingerprint unlocking.
    -Added while in-call exception for turn-off-by-proximity
    -Fixed notification status icon on lock screen
    -Fixed notification possibly disappearing when toggling manual toggle
    -Fixed notification icon not changing back to hand from moon when there’s no active keep-on in between covering proximity and uncovering it
    -Increased number of free apps that keep the screen on to 5
    -Show notification on lock screen again
    -Start on boot before unlocking
    -Added warning dialog for turn-on by proximity functions
    -Built for Android 11
    -Fixed not turning off by proximity when function enabled while in proximity
    -Fixed long sensor status word getting cut off instead of expanding the recyclerview row
    -Fixed turningOffByProximity not being updated properly while toggling proximity exceptions
    -Changed notification title to include whether manual toggle is on or off, and do so for older Android versions as well
    -Made max time limits actually stop turning screen on regardless of charging status so it doesn’t seem broken
    -Updated all show dialog methods to check if already showing
    -Changed to SwitchCompat
    -Switched to Crowdin translations
    -Auto show purchase dialog every day instead of every 3 days
    -Updated to AppCompat 1.2.0
    -Increased minSDK to 18
    -Changed “if tilted up less than / more than” to “if tilted under / over -30deg”
    -Show choose apps dialog if list is empty when enabling
    -Show all active keep-on functions as green instead of sometimes yellow if another function was already keeping it on since they all have the same importance. Yellow didn’t make sense as “would keep on if something else wasn’t already keeping it on” when it was being shown for detected motion out of angle range.
    -Fixed notification badge shown on launcher icon (channel must be re-created)
    -Updated Google Play icon to new icon specifications with straight corners
    ***-Changed Upgrade dialog to use drawables instead of unicode so it doesn’t look different on diff devices***
    ***-Added no thanks button to Upgrade/Donate dialogs (need to show a clear way out of a payment dialog)***
    ***-Made button in DonateDialog link to PayPal donation instead of IAP (donations are listed as not supported by IAP here: https://play.google.com/about/monetization-ads/payments/ )***
    ***-Capitalized button text for payment options / donate button***
    ***-Changed email to send to kinscreen@teqtic.com (“forward” email account on netfirm’s email settings)***
    ***-Fixed Utils.startEmailIntent line breaks not working by switching from \n to <br> https://stackoverflow.com/questions...ne-breaks-in-preset-text-android/47276265]***
    ***-Updated to billing library 3.0.1*** Fixes a bug with app being killed during purchase flow
    ***-Updated BillingManager 2020.07.02***
    ***-Updated BillingConstants, IabService and activities to use arrays of skus rather than checking each one***
    ***-Changed app detection method to hopefully prevent apps getting stuck as detected***
    ***-Consolidated method to detect foreground package names depending on Android version into Utils***
    ***-Updated app detection method with hashMap***
    ***-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***
    ***-Link to rate dialog from menu so they get the messaging first. Updated messaging***
    ***-Capitalized all titles***
    -Changed to keep on while “on a” call
    ***-Added links to changelog and translators into about dialog and onto website***
    ***-Increased dialog margins***
    ***-Set all dialog titles to gravity center so that if it goes to 2 lines the text is still centered***
    ***-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 (2020.06.12) to move shared prefs to device encrypted storage so app can start before unlocking in direct boot mode and PreferencesProvider (2020.06.12) for change in OSP constructor***
    ***-Try showNotification in onStartCommand instead of onCreate to fix RemoteServiceException crash on N+***

    5.5.8 (2020.07.01)
    -Fixed not keeping the screen on when dim

    5.5.7 (2020.06.30)
    -Fixed keeping screen on while on lock screen for Samsung Android 10 devices
    -Added Chinese translation (Thanks Yan!)
    -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

    5.5.6 (2020.03.08)
    -Fixed keep on while in-call for Samsung Android 10 devices
    -Updated Russian translation

    5.5.5 (2020.03.02)

    -Improved solution for Samsung Android 10 devices to prevent quick dimming when keeping the screen on indefinitely
    -Disabled lock screen functions for Samsung Android 10 devices (does not work)
    -Simplified in-app menu by removing “more” separator
    -Removed device admin (didn’t actually work to keep app alive)

    5.5.4 (2020.02.14)
    -Fixed not asking for write system settings permission if showing other warning dialog
    -Improved solution for Samsung Android 10 devices
    -Don’t set system timeout if already set to required value
    -Made permission dialog non-dismissable
    -Added line spacing multiplier
    [-No longer reacquire long wakelocks if not required (only for Samsung/OnePlus)]
    [-Changed “Reset manual toogle with screen off to “Turn off manual toggle with screen off”]
    [-Updated to com.google.android.material:material:1.1.0]
    [-Replaced LocalBroadcastManager with regular broadcast sending from the ToggleServiceReceiver to SettingsActivity as it no longer exists in AndroidX and is deprecated]

    5.5.3 (2020.02.12)
    -Temporary fix for Samsung Android 10 devices
    -Updated sr, hr, bs, lt strings
    -Added device admin to prevent killing on some devices (must turn on from system settings)

    5.5.2 (2020.01.23)
    -Made “Manual toggle” status clickable in the app
    -Added split screen support to app detection
    -Reset manual toggle when service switched off manually
    -Show selected apps first in choose apps dialog
    -Added www.dontkillmyapp.com warning in-app
    -Updated look of nav menu title
    -Fixed widget size to be 1x1
    -Increased text size
    -Fixed analyzing angle from accelerometer sensor if not using angle features
    -Updated Dutch translation (thanks Sjaak)
    [-Reordered statuses to have manual toggle first]
    [-Built for Android 10]
    [-Always re-register proximity sensor to help it not get stuck]
    ***[-Added { *; } to end of “-keep class com.android.vending.billing.**”]***
    ***[-Disabled ok button until list of apps is ready to prevent concurrent modification exception]***
    ***[-Fixed onPostExecute crash in ChooseAppsDialog if pressing cancel before app loading finishes, or if rotating before it finishes…]***
    [***Check for first time open before doing updates in StartReceiver***]
    ***[-Make serviceMessenger and listServiceMessageRunnables null in unbindService calls]**
    ***[-Changed to a new method in hasUsageStats method so that it works right after screen on (getPackageNameLastInForeground doesn’t work for about 2s after screen on)]***
    ***[-Put queryPurchases in onResume for all activities so that it’s properly recognized if rotated during purchase]***
    ***[-Fixed incorrect # free trial days. Change in onSkuDetailsResponse]***
    -***[Updated Google Play Billing API from 1.2 to 2.1. This includes changes to BillingManager and each activity that deals with making purchases in startPurchase(), onSkuDetailsResponse (added listSkuDetails) and onPurchasesUpdated (added “acknowledging” purchase)]***
    ***[-Got rid of mapSkuPrices and mapSkuTrialDays]***
    ***[-Align “I understand” checkbox on the right]***
    [-Changed to Rate on Google Play instead of Rate on Google Play store]

    5.5.1 (2019.05.31)
    -Fixed a crash when choosing apps on some Samsung devices
    -Fixed a rare crash
    -Updated translations

    5.5.0 (2019.05.19)
    -New option to allow screen to dim while being kept on
    -Added search function to choose apps dialog
    -Show system apps in choose apps dialog
    -Fixed starting on boot when KS is toggled off
    -Increased dim time for long standing wakelocks reaching max time limit
    -Set system timeout to that set in KS when toggling service off
    -Added Catalan translation (Thanks Rafael Corredor!)

    5.4.1 (2019.03.18)
    -Update notification icon regardless of option if using manual toggle
    -Updated translations

    5.4.0 (2019.03.02)
    -New option to reset manual toggle with screen off
    -New option to update status bar icon
    -Changed “Time out screen...” to “Time screen out...” to match “Keep screen on…”
    -Set big text notification style in case it’s long
    -Align checkboxes with top line of text
    -Added free trial info to purchase options

    5.3.2 (2019.02.17)
    -Fixed motion and/or angle sensors getting stuck after some time for some devices
    -Do not disable manual toggle with screen off

    5.3.1 (February 10, 2019)
    -Fixed some rare crashes related to billing system

    5.3.0 (February 5, 2019)
    -Added widget to toggle keep screen on manually in addition to notification / QS tile
    -Fixed animations
    -Fixed Tasker start/stop/toggle service intents

    5.2.4 (January 30, 2019)
    -Fixed app detection on some Android 5.0 devices
    -Updated purchase system
    -Updated About dialog style (spacing, date style, website link)
    -Updated in-app link to go directly to privacy policy
    -Linked "Our other apps" to website

    5.2.3 (November 28, 2018)
    -Disabled dynamic notification icon below Android Marshmallow to fix flashing notifications
    -Fixed double call to acquire long standing wakelocks
    -Replaced 6 month subscription with yearly subscription
    -Added Turkish translation (thanks Fatih!)
    -Added Dutch translation
    -Updated Spanish translation
    -Migrated to AndroiX libraries
    -Built for Android P

    5.2.2 (June 12, 2018)
    -Fixed timeout being temporarily extended during long standing wakelocks even if keep-on by waving unchecked
    -Fixed flashing during long dim wakelock
    -Create notification channels before showing notification instead of in activity for people upgrading on/to Oreo
    -Re-acquire long wakelocks less frequently

    5.2.1 (June 12, 2018)
    -Workaround for long wakelocks on some 8.0+ devices (OnePlus, Huawei?, Xiaomi?)
    -Fixed a rare crash
    -Changed “Turn screen off” to “Time out screen”
    -Colored subheadings in green

    5.2.0 (April 28, 2018)
    -IMPORTANT: Please re-set the apps that should keep the screen on
    -Fixed possible corruption of saved apps list
    -Fixed a crash [check if instance saved before showing automatic dialog]
    -Fixed a rare crash [Leaked Service Connection: move bound flag to right after calling bind instead of onConnected since could be destroyed before receiving onConnected, test with RAM filler?]
    -Reordered menu options
    -Changed link to all apps to dev page (so can eventually change "developer name" to have keywords
    -Don't save if channels have been created and always create them. Titanium Backup (and Google?) will end up restoring that you created the channels but they don't actually ever get created.
    -Updated all dialogs to new more colorful design
    -Updated menu strings [for ex “TeqTic apps” to “Our other apps” like in Supercodes)
    -Changed notification title to something more meaningful than app name since notifications show app name anyway (“Manual toggle”)
    -Updated Hungarian translation (thanks Tamas!)

    5.1.0 (March 25, 2018)
    -New menu UI
    -Under the hood improvements to preference storage
    -New upgrade and donate dialogs
    -New pricing models

    5.0.2 (March 3, 2018)
    -Fixed foreground services interfering with foreground app detection
    -Fixed turn-off-by-proximity interrupted by crossing angle threshold
    -Updated Italian translation

    5.0.1 (February 27, 2018)
    -Added back Italian, Czech, Spanish, Lithuanian translations
    -Fixed negative angle for reverse portrait mode
    -Also show negative angle with top down in landscape mode until screen flips
    -Updated to support library 27.1.0

    5.0.0 (February 24, 2018)
    -Added keep-on while using apps
    -Added max angle to keep-on-by-angle
    -Added silent mode exception for vibration
    -Real-time status bar icon updates
    -Negative tilt angle when device is portrait and top down [only if using rotation sensor]
    -Show launcher icon correctly on Android 8
    -Fixed free tilt angle set to 50deg instead of 45deg
    -Cleaner layout (esp. long languages)
    -Fixed not being able to click an option after flinging
    -Don't show notification badges/dots
    -Min API 16
    [-Fixed turn-off-by-proximity exception for manual toggle if something already in proximity]
    [-Added more auto-filled details to support emails]
    [-Fixed no-proximity-sensor not greying out textview]
    [-Don't grey out exceptions if respective keep-on-options not selected]
    [-Hide notification setting from layout on Android 8+]
    [-Change menu item to "Notification settings" instead of "Toggle notification"]
    [-Added cancelation of alarm missing from onDestroy]
    [-Created notification channels in activity]
    [-Updated legacy notifications to use NotificationCompat for priority and setVisibility like in LMO]
    [-Take wave-extension into effect for delay for acquire by motion]
    [-Bolded titles, made them accent color and added 4dp bottom margin]
    [-Increased text size of title in about dialog]
    [-Got rid of unused icons and made new versions of the used ones up to xxxhdpi]
    [-Checkboxes will now wrap down if too long b/c made the buttons a part of them with spannable strings]
    [-Disabled scrolling action bar]

    4.3.2 (January 2, 2018)
    -Fixed screen possibly staying on if service restarted while screen on
    -Hold turn-screen-on wake lock for 3s instead of until screen-on broadcast
    -Check if screen is actually on for screen-on and screen-unlock broadcasts

    4.3.1 (December 28, 2017)
    -Fixed manual toggle not working if not using any keep-on or turn-off options
    -Fixed notification not hiding on lockscreen
    -Changed back to SENSORY_DELAY_NORMAL for proximity sensor
    -Only show one green status indicator (other than motion + non-bright charging)
    -UI tweak

    4.2.1 (October 11, 2017)
    -Fixed upgrade dialog being shown on first open
    -Fixed warning dialog for modify system settings from showing in a loop
    -Fixed notification behavior on older Android versions
    -Set proper timeout after motion calibration
    -Updated translations

    4.2.0 (August 12, 2017)
    -Added option to calibrate tilt angle
    -Fixed motion not being ignored when flat if accelerometer used for tilt
    -Fixed tilt angle not working when not using “keep-on by motion” if accelerometer used for tilt
    -Proximity has to be covered for 2s before uncovering turns screen on
    -Fixed screen sometimes not turning on
    -Fixed motion not resetting max-keep-on-limit during final dim period
    -Fixed user activity not resetting max-keep-on-limit
    -New notification management for Android O
    -Fixed double wave detected too early, when inProximity
    -Built for Android O.
    -Minimum Android version supported up to 14 from 11
    -Made notification priority spinner use ChoiceDialog instead
    -Made email be clickable to start an email in About dialog

    4.1.4 (April 3, 2017)
    -Reset max-keep-on limit with touches for long standing bright wakelocks (ex. tilt angle/charging)
    -Reset max-keep-on limit if there’s new motion while dimmed (as opposed to only during “final” dim time).
    -Reset max-keep-on limit by waving over proximity.
    -Updated to support libraries 25.3.1.
    -Fixed Hebrew translation.

    4.1.3 (March 30, 2017)
    -Fixed “turn-on by proximity except if screen off more than” if also using “turn-on by proximity except if screen off less than.”
    -Do not temporarily extend timeout by waving over proximity if device already kept on by any other rule.
    -Decreased double-wave time interval from 2s to 1s.
    -Fixed squished spinner text.
    -Changed wording for lockscreen option.
    -Right to left layouts supported.
    -Added Hebrew translation (Thanks Liran!)

    4.1.2 (March 23, 2017)
    -Fixed screen turning off too quickly when kept on by motion.
    -Fixed squished wave-times button text.
    -Added Romanian and Hungarian translations (Thanks Andras!)
    -Changed wording for “active on lockscreen” option.
    -Updated translations.

    4.1.1 (March 18, 2017)
    -Fixed screen turning off when keep-on by waving over proximity is unchecked.

    4.1.0 (March 15, 2017)
    -Added option to turn screen on by double-waving-over proximity sensor.
    -“Turn screen off xx min after being continuously kept on” now works when kept on by motion or proximity.
    -Fixed incorrect keep-on time by motion while charging without keep bright.
    -Max keep-on limit resets with screen off, or during final dim by waving over proximity or with motion.
    -Protected against late screen-off event for “turn-on-by-proximity except if screen off less than” option.
    -Fixed rare crash after dismissing dialog.
    -Updated translations.

    4.0.1 (February 9, 2017)
    -Reverted default notification priority to minimum
    -Fixed SEC showing for vibrate instead of MS on free version
    -Updated manually-kept-on status string to “manual toggle” instead of “notification”
    -Fixed Quick Settings tile being clickable when service disabled
    -Added Traditional Chinese translations (Thanks Raymond!)
    -Updated translations

    4.0.0 (February 6, 2017)
    -Fixed turn-off by proximity sometimes not working
    -Added option to temporarily extend screen on time with each wave
    -Added option to turn-on-by-proximity "except if screen off for less than x seconds“
    -Added option to vibrate when screen on/off
    -Added keep-screen-on toggle to QuickSettings pulldown
    -Fixed turn-on by proximity not working after manual turn-off and app restart
    -Reset “except if screen manually turned off” with unlock instead of screen-on
    -Ignore “except if in landscape” if became landscape within last 2s
    -Added privacy policy link due to phone state permission
    -Changed default notification priority to low

    3.4.8 (January 1, 2017)
    -Fixed proximity sensor being used while screen-on if only using turn-on-by-proximity options

    3.4.7 (December 14, 2016)
    -Fixed turn-on-by-proximity feature on some devices
    -Don't change the system screen time out if only using turn-on by proximity
    -Added Hungarian translation

    3.4.6 (November 18, 2016)
    -Updated UI
    -Fixed screen turning on after manually turned off and waving/uncovering right after screen off (protect against late screen-off event)

    3.4.5 (November 1, 2016)
    -Fixed premium version not being recognized for some customers
    -Updated contact email

    3.4.4 (October 26, 2016)
    -Built for Android 7.1
    -Added Portuguese translation (Thanks Adalberto!)

    3.4.3 (October 5, 2016)
    -Added Russian translation (Thanks Sergei!)

    3.4.2 (September 16, 2016)
    -Fixed an issue with turn-on by uncovering proximity sensor

    3.4.1 (September 14, 2016)
    -Fixed issue with proximity sensor getting stuck on Android Nougat 7.0 if using ambient display brightness

    3.4.0 (August 19, 2016)
    -Added option to turn screen on when proximity uncovered
    -Updated support libraries

    3.4.1 (September 14, 2016)
    -Fixed issue with proximity sensor getting stuck on Android Nougat 7.0 if using ambient display brightness

    3.3.1 (July 15, 2016)
    -Fix possible false manual turn off detection if screen off event is late
    -Remember if manually turned off in case service restarts
    -Keep bright while charging even without "keep bright" if something else is also keeping the screen on (angle, call, notification)
    -Make keep bright while charging the default
    -Added Lithuanian translation (Thanks Andrius!)
    -Built for Android Nougat

    3.3.0 (June 30, 2016)
    -Added option to temporarily disable turn-on-by-proximity if screen manually turned off
    -Fixed lockscreen timeout not working
    -Fixed max keep on time not working with keep on while charging and do not keep bright
    -Help prevent unwanted pocket turn-on
    -Made kept-on-by-user state persistent through restart of service
    -Added French translation (Thanks Younes!)
    -Added Italian translation (Thanks Mattia!)
    -Added Arabic translation (Thanks إبراهيم الشكيلي!)

    3.2.2 (May 22, 2016)
    -Less battery use when using turn-on-by-proximity feature
    -Use accelerometer for tilt angle if no gravity or rotation sensor available
    -Don't show proximity status with only turn-on by proximity selected (would never see it)
    -Added Chinese translation (thanks Mark!)

    3.2.1 (May 12, 2016)
    -Added Spanish translations (Thanks Victor!)
    -Added Turkish translations (Thanks Özgün!)
    -Added Polish translations (Thanks Tomasz!)

    3.2.0 (April 29, 2016)
    -Added ability to turn screen on by waving over proximity sensor!
    -Added time exception for turning screen on by proximity to save battery
    -Added back the ability to change lockscreen timeout
    -Angle detection now works on devices without a gyroscope!
    -Fixed grayed out options when they shouldn't be
    -Fixed translations not applying to buttons
    -Added German translation
    -Added Dutch translation, thanks Michiel!
    -Added Serbian, Croatian, Bosnian translations, thanks Alanon!

    3.1.0 (April 11, 2016)
    -Fixed incorrect amount of dim time before screen times out
    -Added Czech translation (Thanks Hamsa!)
    -Slightly improved layout
    -Other small bug fixes
    -Updated support libraries to 23.3.0

    3.0.5 (March 21, 2016)
    -Reduced max dim time to 30s for long continuous wakelocks reaching max actively-kept-on time
    -Slightly updated wording
    -Color spinner drop down icon

    3.0.4 (March 12, 2016)
    -Fixed proximity status possibly getting stuck in proximity on some devices
    -Made "keep on while in call" work from lockscreen even without "active on lockscreen" checked
    -Fixed keep on while in call not working after service toggled
    -Added start/stop intents for tasker
    -Added "About" menu option

    3.0.3 (March 10, 2016)
    -Fixed flickering when kept on by motion with short timeouts
    -Allowed angle values to change past each other (modifying the other if it needs to)
    -Reorder notification priority options with max at top
    -Fixed disabled button coloring

    3.0.2 (March 9, 2016)
    -Fixed crash for pre-KitKat devices

    3.0.1 (March 9, 2016)
    -Fix crash on pre-Marshmallow devices
    -Fix black spinner item

    3.0.0 (March 9, 2016)
    -New keep screen on while in-call option
    -New option to turn off after max keep-on time
    -New option to turn off by proximity except in landscape mode
    -New option for notification priority
    -Tap notification to keep screen on until turned off
    -New look
    -Angle decreases to flat when upside down
    -Cleaner notification with expandable action
    -Tasker integration com.teqtic.kinscreen.INTENT_TOGGLE_SERVICE
    -Min dim time of 3s
    -Hide sub-options when main option unchecked
    -Layout improvements

    2.2.6 (January 21, 2016)
    -Stopped using proximity bug workaround on Android 6.0.0 as well due to issues with some devices

    2.2.5 (January 17, 2016)
    -Stopped using proximity bug workaround on Android 6.0.1
    -Material style dialogs for pre-Lollipop devices
    -Fixed proximity timeout button not getting greyed out if proximity sensor not available
    -Stopped checking if KS updated whenever any app updated
    -Added donation options
    -Updated to appcompat 23.1.1

    2.2.4
    -Fixed service not remembering premium version
    -Fixed settings activity improperly reporting premium version
    -Updated to appcompat 23.1.0

    2.2.3
    -Fix an issue on Samsung Galaxy S5 introduced with the last update.

    2.2.2
    -Fixed in-proximity sometimes getting stuck on due to bug in Android M
    -Fixed incorrect timing for proximity sensor cycling
    -Changed write system setting dialog button to OK instead of Set

    2.2.1
    -Fix permissions issues on Android Marshmallow Preview (must explicitly allow permission to write to system settings!)

    2.2.0
    -Fixed rare crash. [Caught a more general exception in the try catch of messenger.send]
    -Fixed a rare issue with the recognition of purchases and the purchase system.
    -Updated to newest libraries and built with Marshmallow SDK.
    -More efficient reporting of statuses from service to settings screen.
    -Improved communication between settings screen and service (independent preference files).
    -Minor layout improvement.
    9
    New update out on XDA Labs and Google Play! I was finally able to fix the screen not staying on while on the lock screen for Samsung Android 10 devices.

    5.5.7 (2020.06.30)
    -Fixed keeping screen on while on lock screen for Samsung Android 10 devices
    -Added Chinese translation (Thanks Yan!)
    -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
    8
    Just published the biggest update in a long time! Now available on Google Play and XDA Labs!

    5.0.0 (February 24, 2018)
    -Added keep-on while using apps
    -Added max angle to keep-on-by-angle
    -Added silent mode exception for vibration
    -Real-time status bar icon updates
    -Negative tilt angle when device is portrait and top down [only if using rotation sensor]
    -Show launcher icon correctly on Android 8
    -Fixed free tilt angle set to 50deg instead of 45deg
    -Cleaner layout (esp. long languages)
    -Fixed not being able to click an option after flinging
    -Don't show notification badges/dots
    -Min API 16

    [-Fixed turn-off-by-proximity exception for manual toggle if something already in proximity]
    [-Added more auto-filled details to support emails]
    [-Fixed no-proximity-sensor not greying out textview]
    [-Don't grey out exceptions if respective keep-on-options not selected]
    [-Hide notification setting from layout on Android 8+]
    [-Change menu item to "Notification settings" instead of "Toggle notification"]
    [-Added cancelation of alarm missing from onDestroy]
    [-Created notification channels in activity]
    [-Updated legacy notifications to use NotificationCompat for priority and setVisibility like in LMO]
    [-Take wave-extension into effect for delay for acquire by motion]
    [-Bolded titles, made them accent color and added 4dp bottom margin]
    [-Increased text size of title in about dialog]
    [-Got rid of unused icons and made new versions of the used ones up to xxxhdpi]
    [-Checkboxes will now wrap down if too long b/c made the buttons a part of them with spannable strings]
    [-Disabled scrolling action bar]
    8
    88b69a6ff1be412caea32fbbc3e090ed.jpg


    Finally 100k! Thanks guys, keep spreading the word.

    Sent from my Nexus 5X using Tapatalk
    7
    Another update! Get it on Google Play or right here through the XDA Labs app! It's been almost 3 years since KinScreen came out. This was actually my first app and is now my most downloaded, it's come a long way! Please continue to spread the word.

    P.S. Has anyone noticed that the QuickSettings tile is no longer being tinted properly when toggle is being used? This was working fine on Android 7.1.1 but stopped with 7.1.2. I was hoping this would be fixed with the final 7.1.2 but I just updated and it's the same!

    4.1.4 (April 3, 2017)
    -Reset max-keep-on limit with touches for long standing bright wakelocks (ex. tilt angle/charging)
    -Reset max-keep-on limit if there’s new motion while dimmed (as opposed to only during “final” dim time).
    -Reset max-keep-on limit by waving over proximity.
    -Updated to support libraries 25.3.1.
    -Fixed Hebrew translation.