# PrivacyScreenEnhancedPlugin

## What is this?

This plugin hides sensitive info in Multitasking while **allowing manual screenshots**.
This plugin is an improved version of [cordova-plugin-privacyscreen](https://www.npmjs.com/package/cordova-plugin-privacyscreen).
Advantages are listed below...

#### Advantages:

The advantages of this version are the following:
   1. **On Android**, original plugin blocks manual screenshots whatsoever. **Our version allows for making manual screenshots** while hiding app snapshot in Recents view. It's achieved by toggling FLAG_SECURE back and forth in onPause and onResume system events.
   2. **On iOS**, we unified the logic to **support any device** of any generation. **You need to supply a single image** which will be properly scaled and displayed in the App Switcher instead of sensitive data.

#### Set up:

**On iOS**, it searches for an image in **Images.xcassets** folder. If you're using **splashscreen plugin**, the easiest way to supply image is to set value in **.plist file** equal to Splashscreen asset's name(**LaunchStoryboard**). Put the following into the config.xml:
```xml
    <edit-config file="*-Info.plist" mode="merge" target="UILaunchImageFile">
        <string>LaunchStoryboard</string>
    </edit-config>
```

### Downsides:
------------------

1. **On Android**, it's IMPOSSIBLE to display **custom image** instead of blank white screen.
2. **Android 7 and lower** doesn't hide the snapshot([related StackOverflow](https://stackoverflow.com/questions/56898189/why-does-flag-secure-blanks-screen-in-some-phones-and-doesnt-blur-in-other-phon)).
----------------

**Enjoy using the plugin** and drop me a line if you have suggestions for improvements or just want to chat:)