• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[NO ROOT][28.04.2020] FaceNotify - Show notifications only when you look

What ROM are you using?

  • OxygenOS (Pie)

    Votes: 403 72.6%
  • OxygenOs (Oreo)

    Votes: 12 2.2%
  • crDroid

    Votes: 3 0.5%
  • OmniROM

    Votes: 4 0.7%
  • LOS

    Votes: 8 1.4%
  • AOSP

    Votes: 26 4.7%
  • MIUI

    Votes: 35 6.3%
  • Other custom ROM

    Votes: 64 11.5%

  • Total voters
    555
Search This thread

K4CZP3R

Senior Member
Apr 17, 2015
277
337
k4czp3r.xyz
jNe8vWj.png

FaceNotify by K4CZP3R

Hi, I'm really happy to show you my app.
This app will hide content of your notifications and show it only when it recognizes your face!

I really wanted this IOS-feature on my OnePlus, but could not find an app for this. So I wrote this app!
Installation guide on YouTube

It works with OnePlus 5/5T/6/6T/Xiaomi RN7/Samsung S8/S9/S9+/S10. Other phones are not tested, but it will probably work.
(OS Supported: OxygenOS, crDroid, OmniROM, MIUI)

Send me your logcat dump if you want to have your phone supported! (adb logcat -d > logcat.txt)
Create logcat dump after locking and unlocking your device using face unlock
Upload to gist.github or pastebin and send it to me via PM.
You can send my app log if you are having issues! (Enable it in settings, then send file named Documents/facenotify.txt)


OnePlus and their Oxygen OS Android modification is known as maximizing the stock Android experience. This may be true on the UX front but the exact opposite is valid for background process limits. ~https://dontkillmyapp.com/oneplus
So, try to follow this guide if the service gets killed!

If it still does not work, you can try to install facenotify as system app (will add magisk support for it in the next release!)

Code:
Changelog 2.0.5 (beta)
- Comply with Google Smartlock (FaceNotify will show notifications when Google Smartlock trust your location/bluetooth devices)
Changelog 1.5.6
- Added support for Galaxy S20 (and other new galaxy devices)
- Fixed App Logger crashing the whole app (Permissions error on android 10)

Changelog 1.5.3
- Fixed: scan function would not work because of path differences between phones
- Fixed: LG face recognition, thanks to @Saad Kothiwala

Changelog 1.5.2 (This version is only available through google play)
- Fixed: Notifications not showing after detection
- Added: [B]LG support[/B] (let me know if it works)
- Added: Reboot info at first startup
- Changed: removed hardcoded strings
- This is the last beta release (if everything goes well)

Changelog 1.5.0 (This version is only available through google play)
- Fixed: redirection to face unlock settings (All phones)
- Fixed: device not supported even when it is supported
- Changed: icons in settings
- Fixed: layout of startup check (Now it should work with smaller screen sizes)

Changelog 1.4.9 (This version is only available through google play)
- Changed: versionNameSuffix apperance (x.x.x.beta)
- Added: face unlock settings activity in manifest (this should fix fc on samsung phones)
- Changed: categorized settings
- Fixed: restoreAtInstall would not reset "firstRun" flag
- Deleted: old service functions
- Changed: comp check in settings
- Changed: Face detection scan should be a little bit more faster now
- Changed: logcat check, now system does the heavy part, not the app
- Fixed: Multiple services because startAtBoot service did not check if service is already on
- Fixed: crash on service stop
Fixed: Bug where service would crash because of wrong type of preference

Changelog 1.4.8 (This version is only available through google play)
- Added: Iris, Intelligent scan for samsung devices! (Thanks, @marcovittori and @Mr.Januzi)
- Changed: Backend server api
- Tried to fix: method tester in settings

Changelog 1.4.2 (This version is only available through google play)
- Added: Samsung Galaxy S8/S9/S10 support! (Thanks, @Mr.Januzi)
- Added: Samsung Galaxy S9+ to the supported devices list (SAMSUNG_SM-G965F)
- Fixed: FaceNotify would not work if specified language was set on phone
- Added: Changelog in the app

Changelog 1.4.0 (This version is only available through google play)
- Fixed: now service start itself at boot
- Fixed: Background service (check settings [ignore battery optimisation])
- Changed: Delay after face detection can by any value (in ms)
- Changed: First run screen (clear app data to see it)

Changelog 1.3.3 (This version is only available through google play) 
- Fixed: Crash on start (it was due bad implementation of file reader) 
- Moved: Log viewer to separate activity 
- Changed: Logcat won't contain app facedetection messages (only app logs will do) 
- Changed: Small cosmetic changes

Changelog 1.3.2
- Changed: Detection mode, software is prioritized over hardware

Changelog 1.3.1
- Added: support for MIUI (Tested on Xiaomi Redmi Note 7)
- Added: support for Xiaomi Redmi Note 7 on MIUI
- Changed: Yet another update on background process...
- Added: App log (enable it in settings to log app behaviour)
- Added: Simple "animations" [works with content hiding, not notification hiding]
- Changed: small cosmetic changes
- Changed: cleaned code a little bit
- Changed: "Your phone" name to a human-readable one
- Changed: names of detection modes to (OnePlus (Oxygen OS), AOSP (smartlock), Xiaomi (MIUI))
- Bug 1: In tester, miui option does have Samsung name (it's just a string mismatch) so if there's a true at samsung, choose miui.

Changelog 1.3.0
- Added: support for OmniROM (9.0)
- Added: Another method of background service (need to be tested)
- Added: Bugs to be fixed later
- Added: Will scan logs after the time of unlocking (won't scan old logs which could confuse notification show decision)
- Removed: Not working samsung unlock option
- Bug 1: Sometimes content will overlap 
- Bug 2: You need to tap on a boot notification to start service

Changelog 1.2.7
- Added: Initial support for Samsung Galaxy S9 (probably broken)
- Added: Support for crDroid (on OnePlus 5T, there is a chance it will work on other custom roms)
- Added: Ability to choose 1 of 3 detection options (OOS, Custom ROM, Samsung) [Will add more in the future]
- Added: Test mode in settings, open it, lock your screen and unlock using your face. Then look if a value changes from false to true, if not your phone is not supported :( (send me your logcat)
- Changed: The way of detecting face back to 1.1 (Test)

Changelog 1.2.5 (hotfix)
- Added: Fix button in settings, if your face detection has no effect, please use this button.

Changelog 1.2.4
- Fixed: Restore to defaults had no effect
- Fixed: When hide notification, it would show notification with hidden content
- Fixed: Bug where multiple services will launch causing detection to break
- Fixed: Start on boot not executing

Changelog 1.2
- Added support for non-rooted phones (You will need a one-time adb connection to grant some permissions)
- Added support for OnePlus 5
- Rewrote some functions (preparing for open source release)

Changelog 1.1
- Lowered API, now Oreo devices can install this app
- Added support for OnePlus 5t
- Fixed bug when whole notification will show, but content will be still hidden
- Fixed shortcut to security settings

FaceNotify will need following permissions:
Code:
READ_LOGS - Check status of face recognition (adb shell pm grant k4czp3r.facenotify android.permission.READ_LOGS)
WRITE_SECURE_SETTINGS - Configure notifications settings (adb shell pm grant k4czp3r.facenotify android.permission.WRITE_SECURE_SETTINGS)
DUMP and PACKAGE_USAGE_STATS - Check background service status (adb shell pm grant k4czp3r.facenotify android.permission.DUMP) (adb shell pm grant k4czp3r.facenotify android.permission.PACKAGE_USAGE_STATS)

How to grant these permissions
Linux
1. Download platform-tools to be able to use ADB (google it)
2. Enable USB Debugging on your phone
3. Connect your phone to the computer
4. Enter adb devices
5. If your device is on the list, continue, otherwise repeat from step 2.
6. Grant needed permissions:
6a.
Code:
adb shell pm grant k4czp3r.facenotify android.permission.READ_LOGS
6b.
Code:
adb shell pm grant k4czp3r.facenotify android.permission.WRITE_SECURE_SETTINGS
6c.
Code:
adb shell pm grant k4czp3r.facenotify android.permission.DUMP
6d.
Code:
adb shell pm grant k4czp3r.facenotify android.permission.PACKAGE_USAGE_STATS
7. Permissions are granted and you can use FaceNotify now!


Windows
1. Download FaceNotify - Helper (look at downloads section)
2. Enable USB Debugging on your phone.
3. Connect your phone to the computer
4. Open FaceNotify Helper.exe
5. In the new opened window click Refresh
6. If your device is on the list, select it and continue, otherwise repeat from step 2.
7. Button Grant permissions should become active, click it
8. Accept confirmation message.
9. Permissions are granted and you can use FaceNotify now!

FAQ
Q: Nothing happens when my face is detected
A: Run Fix logs option in settings

Q: I've just installed FaceNotify and started service, it does not work
A: Reboot your phone.

Presentation by 4U Tech

Download from Play Store!
FaceNotify - PlayStore Download


Big thanks to:
@Mr.Januzi- for samsung galaxy s8/s9/s10 support
(and everyone who sent logcats to help me!)

Buy me a beer! paypal.me/KacperSerewis

Sources:
FaceNotify - Helper: https://github.com/K4CZP3R/FaceNotify_helper

XDA:DevDB Information
FaceNotify, Tool/Utility for the OnePlus 6

Contributors
kacperes00

Version Information
Status: Stable
Current Stable Version: 1.5.6
Stable Release Date: 2020-04-28
Current Beta Version: 2.0.5
Beta Release Date: 2020-05-04

Created 2019-04-03
Last Updated 2020-05-10
 

Attachments

  • Screenshot_Face_Notify_20190501-023055.png
    Screenshot_Face_Notify_20190501-023055.png
    205 KB · Views: 22,067
  • Screenshot_Face_Notify_20190501-023101.png
    Screenshot_Face_Notify_20190501-023101.png
    87.9 KB · Views: 21,940
  • Screenshot_Face_Notify_20190501-023105.png
    Screenshot_Face_Notify_20190501-023105.png
    64.3 KB · Views: 21,672
  • Screenshot_Face_Notify_20190501-023109.png
    Screenshot_Face_Notify_20190501-023109.png
    81.5 KB · Views: 20,681
Last edited:

tengtengvn

Senior Member
Dec 13, 2008
816
196
Silicon Valley
Great idea. Thanks for making this.
Just FYI for other: On the 6T, I only saw a blank page when I first opened the app. Waited a bit and I could see the buttons.

Sent from my ONEPLUS A6013 using Tapatalk
 

jnss98b

Senior Member
Anybody confirm if it works on 5t?
Someone on the reddit post confirmed that it works. Although it will say "not supported" in the second box

Sent from my ONEPLUS A6003 using XDA Labs

---------- Post added at 06:01 AM ---------- Previous post was at 05:52 AM ----------

Oh damn never thought this would be possible. One caveat though. The transition from hidden to showing the notification content is not smooth. Actually there isn't even an animation. Could you do something with that or is it a limitation of Android?

Sent from my ONEPLUS A6003 using XDA Labs
 
  • Like
Reactions: GeneFitz23

anirudhnyg

Senior Member
Jan 17, 2011
811
294
Bangalore
Does not seem to be working for me on OnePlus 6.

First time I tap start service, it gives me an error my device is not supported. Second time it activates but does not hide any notifications on lock screen.
 

Attachments

  • Screenshot_20190404-105147.jpg
    Screenshot_20190404-105147.jpg
    142.1 KB · Views: 5,284
  • Screenshot_20190404-105806.jpg
    Screenshot_20190404-105806.jpg
    121.2 KB · Views: 5,241
Last edited:

jnss98b

Senior Member
It's a little inconsistent on OOS 9.0.3. The persistent notification is there, battery optimization is off for this app but somehow it still doesn't work after a period of time and I have to go into the app to disable and then re enable the service for it to work again.

Sent from my ONEPLUS A6003 using XDA Labs
 

Top Liked Posts

  • There are no posts matching your filters.
  • 90
    jNe8vWj.png

    FaceNotify by K4CZP3R

    Hi, I'm really happy to show you my app.
    This app will hide content of your notifications and show it only when it recognizes your face!

    I really wanted this IOS-feature on my OnePlus, but could not find an app for this. So I wrote this app!
    Installation guide on YouTube

    It works with OnePlus 5/5T/6/6T/Xiaomi RN7/Samsung S8/S9/S9+/S10. Other phones are not tested, but it will probably work.
    (OS Supported: OxygenOS, crDroid, OmniROM, MIUI)

    Send me your logcat dump if you want to have your phone supported! (adb logcat -d > logcat.txt)
    Create logcat dump after locking and unlocking your device using face unlock
    Upload to gist.github or pastebin and send it to me via PM.
    You can send my app log if you are having issues! (Enable it in settings, then send file named Documents/facenotify.txt)


    OnePlus and their Oxygen OS Android modification is known as maximizing the stock Android experience. This may be true on the UX front but the exact opposite is valid for background process limits. ~https://dontkillmyapp.com/oneplus
    So, try to follow this guide if the service gets killed!

    If it still does not work, you can try to install facenotify as system app (will add magisk support for it in the next release!)

    Code:
    Changelog 2.0.5 (beta)
    - Comply with Google Smartlock (FaceNotify will show notifications when Google Smartlock trust your location/bluetooth devices)
    Changelog 1.5.6
    - Added support for Galaxy S20 (and other new galaxy devices)
    - Fixed App Logger crashing the whole app (Permissions error on android 10)
    
    Changelog 1.5.3
    - Fixed: scan function would not work because of path differences between phones
    - Fixed: LG face recognition, thanks to @Saad Kothiwala
    
    Changelog 1.5.2 (This version is only available through google play)
    - Fixed: Notifications not showing after detection
    - Added: [B]LG support[/B] (let me know if it works)
    - Added: Reboot info at first startup
    - Changed: removed hardcoded strings
    - This is the last beta release (if everything goes well)
    
    Changelog 1.5.0 (This version is only available through google play)
    - Fixed: redirection to face unlock settings (All phones)
    - Fixed: device not supported even when it is supported
    - Changed: icons in settings
    - Fixed: layout of startup check (Now it should work with smaller screen sizes)
    
    Changelog 1.4.9 (This version is only available through google play)
    - Changed: versionNameSuffix apperance (x.x.x.beta)
    - Added: face unlock settings activity in manifest (this should fix fc on samsung phones)
    - Changed: categorized settings
    - Fixed: restoreAtInstall would not reset "firstRun" flag
    - Deleted: old service functions
    - Changed: comp check in settings
    - Changed: Face detection scan should be a little bit more faster now
    - Changed: logcat check, now system does the heavy part, not the app
    - Fixed: Multiple services because startAtBoot service did not check if service is already on
    - Fixed: crash on service stop
    Fixed: Bug where service would crash because of wrong type of preference
    
    Changelog 1.4.8 (This version is only available through google play)
    - Added: Iris, Intelligent scan for samsung devices! (Thanks, @marcovittori and @Mr.Januzi)
    - Changed: Backend server api
    - Tried to fix: method tester in settings
    
    Changelog 1.4.2 (This version is only available through google play)
    - Added: Samsung Galaxy S8/S9/S10 support! (Thanks, @Mr.Januzi)
    - Added: Samsung Galaxy S9+ to the supported devices list (SAMSUNG_SM-G965F)
    - Fixed: FaceNotify would not work if specified language was set on phone
    - Added: Changelog in the app
    
    Changelog 1.4.0 (This version is only available through google play)
    - Fixed: now service start itself at boot
    - Fixed: Background service (check settings [ignore battery optimisation])
    - Changed: Delay after face detection can by any value (in ms)
    - Changed: First run screen (clear app data to see it)
    
    Changelog 1.3.3 (This version is only available through google play) 
    - Fixed: Crash on start (it was due bad implementation of file reader) 
    - Moved: Log viewer to separate activity 
    - Changed: Logcat won't contain app facedetection messages (only app logs will do) 
    - Changed: Small cosmetic changes
    
    Changelog 1.3.2
    - Changed: Detection mode, software is prioritized over hardware
    
    Changelog 1.3.1
    - Added: support for MIUI (Tested on Xiaomi Redmi Note 7)
    - Added: support for Xiaomi Redmi Note 7 on MIUI
    - Changed: Yet another update on background process...
    - Added: App log (enable it in settings to log app behaviour)
    - Added: Simple "animations" [works with content hiding, not notification hiding]
    - Changed: small cosmetic changes
    - Changed: cleaned code a little bit
    - Changed: "Your phone" name to a human-readable one
    - Changed: names of detection modes to (OnePlus (Oxygen OS), AOSP (smartlock), Xiaomi (MIUI))
    - Bug 1: In tester, miui option does have Samsung name (it's just a string mismatch) so if there's a true at samsung, choose miui.
    
    Changelog 1.3.0
    - Added: support for OmniROM (9.0)
    - Added: Another method of background service (need to be tested)
    - Added: Bugs to be fixed later
    - Added: Will scan logs after the time of unlocking (won't scan old logs which could confuse notification show decision)
    - Removed: Not working samsung unlock option
    - Bug 1: Sometimes content will overlap 
    - Bug 2: You need to tap on a boot notification to start service
    
    Changelog 1.2.7
    - Added: Initial support for Samsung Galaxy S9 (probably broken)
    - Added: Support for crDroid (on OnePlus 5T, there is a chance it will work on other custom roms)
    - Added: Ability to choose 1 of 3 detection options (OOS, Custom ROM, Samsung) [Will add more in the future]
    - Added: Test mode in settings, open it, lock your screen and unlock using your face. Then look if a value changes from false to true, if not your phone is not supported :( (send me your logcat)
    - Changed: The way of detecting face back to 1.1 (Test)
    
    Changelog 1.2.5 (hotfix)
    - Added: Fix button in settings, if your face detection has no effect, please use this button.
    
    Changelog 1.2.4
    - Fixed: Restore to defaults had no effect
    - Fixed: When hide notification, it would show notification with hidden content
    - Fixed: Bug where multiple services will launch causing detection to break
    - Fixed: Start on boot not executing
    
    Changelog 1.2
    - Added support for non-rooted phones (You will need a one-time adb connection to grant some permissions)
    - Added support for OnePlus 5
    - Rewrote some functions (preparing for open source release)
    
    Changelog 1.1
    - Lowered API, now Oreo devices can install this app
    - Added support for OnePlus 5t
    - Fixed bug when whole notification will show, but content will be still hidden
    - Fixed shortcut to security settings

    FaceNotify will need following permissions:
    Code:
    READ_LOGS - Check status of face recognition (adb shell pm grant k4czp3r.facenotify android.permission.READ_LOGS)
    WRITE_SECURE_SETTINGS - Configure notifications settings (adb shell pm grant k4czp3r.facenotify android.permission.WRITE_SECURE_SETTINGS)
    DUMP and PACKAGE_USAGE_STATS - Check background service status (adb shell pm grant k4czp3r.facenotify android.permission.DUMP) (adb shell pm grant k4czp3r.facenotify android.permission.PACKAGE_USAGE_STATS)

    How to grant these permissions
    Linux
    1. Download platform-tools to be able to use ADB (google it)
    2. Enable USB Debugging on your phone
    3. Connect your phone to the computer
    4. Enter adb devices
    5. If your device is on the list, continue, otherwise repeat from step 2.
    6. Grant needed permissions:
    6a.
    Code:
    adb shell pm grant k4czp3r.facenotify android.permission.READ_LOGS
    6b.
    Code:
    adb shell pm grant k4czp3r.facenotify android.permission.WRITE_SECURE_SETTINGS
    6c.
    Code:
    adb shell pm grant k4czp3r.facenotify android.permission.DUMP
    6d.
    Code:
    adb shell pm grant k4czp3r.facenotify android.permission.PACKAGE_USAGE_STATS
    7. Permissions are granted and you can use FaceNotify now!


    Windows
    1. Download FaceNotify - Helper (look at downloads section)
    2. Enable USB Debugging on your phone.
    3. Connect your phone to the computer
    4. Open FaceNotify Helper.exe
    5. In the new opened window click Refresh
    6. If your device is on the list, select it and continue, otherwise repeat from step 2.
    7. Button Grant permissions should become active, click it
    8. Accept confirmation message.
    9. Permissions are granted and you can use FaceNotify now!

    FAQ
    Q: Nothing happens when my face is detected
    A: Run Fix logs option in settings

    Q: I've just installed FaceNotify and started service, it does not work
    A: Reboot your phone.

    Presentation by 4U Tech

    Download from Play Store!
    FaceNotify - PlayStore Download


    Big thanks to:
    @Mr.Januzi- for samsung galaxy s8/s9/s10 support
    (and everyone who sent logcats to help me!)

    Buy me a beer! paypal.me/KacperSerewis

    Sources:
    FaceNotify - Helper: https://github.com/K4CZP3R/FaceNotify_helper

    XDA:DevDB Information
    FaceNotify, Tool/Utility for the OnePlus 6

    Contributors
    kacperes00

    Version Information
    Status: Stable
    Current Stable Version: 1.5.6
    Stable Release Date: 2020-04-28
    Current Beta Version: 2.0.5
    Beta Release Date: 2020-05-04

    Created 2019-04-03
    Last Updated 2020-05-10
    7
    Thank you. Downloading and testing alongside plus beat (set up: one only showing the waiting notifications icon, while your app opens up content to the registered face.
    Apologies if it's been done and documented, ill get down to catching up tonight



    Dude really,?
    I'm using the XDA app mate!
    7
    New rewritten app

    Hi! I wanted to try something new and that's why I've rewritten the whole app in Kotlin.
    What has changed:
    * I've properly implemented background service (so it should not be killed after some time)
    * New faster scan method (does only scan events after screen on and not all of them, native, so not by my app)
    * New helper for windows (rewritten and optimized)


    It should be ready to download soon :)

    From this release the app source will be available here: github.com/K4CZP3R/FaceNotify
    Source code of the helper is here: github.com/K4CZP3R/FaceNotify_helper
    6
    I love the idea, but enabling Face Unlock is a deal breaker for me. I'd love to use it, if it were possible to only unlock the notifications but not the phone using my face.
    That's a great idea! (Will add it to my to-do list)
    5
    New update is coming soon
    * FIXED: Notifications would be shown without proper face detect
    * Still working on background process (it gets killed after some time ;/)