01. 스크린샷 기능 구현하기
미디어 라이브러리 접근과 같이 민감한 정보가 필요한 앱 -> 접근 허용, 거부 권한 요청해야함.
usePermission() // permissionResponse, requestPermission() 메소드 사용하여 접근권한 요청 가능
* permissionResponse == null: 앱이 처음 로드될 때 권한 상태가 허용, 거부 되지 않은 경우
* permissionResponse == granted : 권한 허용
** requestPermission() 함수 사용하여 trigger 할 수 있음.
import { useEffect, useState } from 'react';
import * as MediaLibrary from 'expo-media-library';
// ...rest of the code remains same
export default function Index() {
const [permissionResponse, requestPermission] = MediaLibrary.usePermissions();
// ...rest of the code remains same
useEffect(() => {
if (!permissionResponse?.granted) {
requestPermission();
}
}, []);
// ...rest of the code remains same
}
- useEffect의 의존성 배열이 빈 배열이므로 첫 렌더링 시 실행된다.
- 권한이 부여되지 않은 경우, requestPermission()을 실행한다.
'앱개발 > React Native' 카테고리의 다른 글
| RN - React Native의 기초, 구조 (0) | 2025.12.08 |
|---|---|
| RN - 스크린샷 구현하기, collapsable (0) | 2025.12.08 |
| RN - Gesture에 대해서 (0) | 2025.12.08 |
| RN - useSharedValue (0) | 2025.12.08 |
| RN - React Native 제스처 핸들러 (0) | 2025.12.07 |
댓글