React Native Detector Save

a screenshot detector for react native

Project README

react-native-detector

a simply and easy to use screenshot detector for react native

Installation

yarn

yarn add react-native-detector

npm

npm install react-native-detector

iOS

cd ios && pod install

android

for Android you need to have access for READ_EXTERNAL_STORAGE to detect screenshots by user to do that you just need to add this line in AndroidManifest.xml

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

and get user permission

import { PermissionsAndroid } from 'react-native';

//...
const requestPermission = async () => {
  await PermissionsAndroid.request(
    PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE,
    {
      title: 'Get Read External Storage Access',
      message: 'get read external storage access for detecting screenshots',
      buttonNeutral: 'Ask Me Later',
      buttonNegative: 'Cancel',
      buttonPositive: 'OK',
    }
  );
};

Usage

import {
  addScreenshotListener,
  removeScreenshotListener,
} from 'react-native-detector';

// ...
React.useEffect(() => {
  const userDidScreenshot = () => {
    console.log('User took screenshot');
  };
  const unsubscribe = addScreenshotListener(userDidScreenshot);
  return () => {
    unsubscribe();
  };
}, []);

Roadmap

Status Goal
iOS version of screenshot detector
✅ (Thanks to @mhssn95) Android version of screenshot detector
🚧 Screen recording detecting
🚧 Calls detector

Contributing

See the contributing guide to learn how to contribute to the repository and the development workflow.

License

MIT

Open Source Agenda is not affiliated with "React Native Detector" Project. README Source: AzizAK/react-native-detector
Stars
203
Open Issues
22
Last Commit
10 months ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating