Web Analytics
본문으로 건너뛰기

initSettings 새로움 ✨

버전

v2.0.0+부터 사용 가능

원하는 설정으로 ScreenGuard를 초기화합니다. 이 함수는 다른 ScreenGuard API를 사용하기 전에 반드시 호출해야 합니다.

매개변수

다음 매개변수를 포함하는 JS 객체를 받습니다:

이름필수 여부타입기본값
enableCapture아니요booleanfalse
enableRecord아니요booleanfalse
enableContentMultitask아니요booleanfalse
displayScreenGuardOverlay아니요booleanfalse
displayScreenguardOverlayAndroid아니요booleantrue
timeAfterResume아니요number1000
getScreenshotPath아니요booleanfalse
limitCaptureEvtCount아니요numbernull
trackingLog아니요booleanfalse

enableCapture

타입boolean
기본값false
플랫폼iOS, Android

스크린샷 허용 여부를 설정합니다. 기본값은 false(비허용)입니다.


enableRecord

타입boolean
기본값false
플랫폼iOS 13+, Android 15+ (API 35+)

화면 녹화 허용 여부를 설정합니다. 기본값은 false(비허용)입니다.

Android 제한 사항

Android의 화면 녹화 감지는 **API 35+ (Android 15+)**에서만 지원됩니다. 이전 버전에서는 이 설정이 무시됩니다.


enableContentMultitask

타입boolean
기본값false
플랫폼iOS 전용

true로 설정하면 앱 전환기(멀티태스킹 뷰)에서 앱 콘텐츠가 계속 표시됩니다. false인 경우 등록 유형(색상, 블러 또는 이미지)에 따라 숨겨지거나 블러 처리됩니다.


displayScreenGuardOverlay

타입boolean
기본값false
플랫폼iOS 전용

true로 설정하면 사용자가 스크린샷을 찍거나 화면을 녹화할 때(녹화가 중단될 때까지) 오버레이를 표시하고, timeAfterResume 시간 후에 사라집니다. 오버레이는 등록된 유형(색상, 블러 또는 이미지)과 동일한 스타일을 사용합니다. Screenguard가 활성화된 경우에만 작동합니다.

참고: 앱의 기능에 영향을 주지 않는 경우에만 사용하시고, 사용에 따른 책임은 사용자에게 있습니다!


displayScreenguardOverlayAndroid

타입boolean
기본값true
플랫폼Android 전용

true로 설정하면 사용자가 백그라운드에서 앱으로 돌아올 때 오버레이를 표시합니다. 기본값은 true(사용)입니다. Screenguard가 활성화된 경우에만 작동합니다.


timeAfterResume

타입number (밀리초)
기본값1000
플랫폼iOS, Android

캡처 후(iOS) 또는 백그라운드에서 복귀 후(Android) 오버레이를 표시하는 시간(밀리초)입니다. displayScreenGuardOverlay 또는 displayScreenguardOverlayAndroidtrue여야 합니다.

예: 2초 동안 오버레이를 표시하려면 2000으로 설정하세요.


getScreenshotPath

타입boolean
기본값false
플랫폼iOS, Android

true로 설정하면 스크린샷 이벤트 데이터에 캡처된 스크린샷 파일의 경로가 포함됩니다. 이는 useSGScreenShot 훅의 screenshotData.path 속성을 통해 확인할 수 있습니다.


limitCaptureEvtCount

타입number | null
기본값null
플랫폼iOS, Android*

스크린샷 캡처 이벤트 발생 횟수를 제한합니다.

  • null 또는 0: 매번 발생(제한 없음)
  • > 0: 처음 N개의 스크린샷에 대해서만 발생
Android 제한 사항

Android의 경우 Screenguard가 활성화된 동안(FLAG_SECURE가 표준 스크린샷 시도를 차단) 스크린샷 감지가 작동하지 않을 수 있습니다.

limitCaptureEvtCount = 3 테스트 데모:

iOS

Android


trackingLog

타입boolean
기본값false
플랫폼iOS, Android

디버깅을 위해 활동 로깅을 활성화합니다. 활성화하면 ScreenGuard가 모든 이벤트(활성화, 비활성화, 스크린샷 감지 등)를 기록하며, 이는 getScreenGuardLogs를 통해 조회할 수 있습니다.


예제 코드

기본 초기화:

import ScreenGuardModule from 'react-native-screenguard';

// 기본 설정으로 초기화
await ScreenGuardModule.initSettings();

사용자 지정 설정 사용:

import ScreenGuardModule from 'react-native-screenguard';

await ScreenGuardModule.initSettings({
displayScreenGuardOverlay: true,
timeAfterResume: 2000,
getScreenshotPath: true,
trackingLog: true,
});