내부 저장소 (preference)
개요
preference 네임스페이스는 네이티브 환경의 내부 저장소를 활용하여 앱 내 데이터를 저장, 조회 및 삭제하는 기능을 제공합니다.
앱 내부 설정, 자동 로그인 여부, 임시 데이터 등 소량의 데이터를 영구적으로 저장하고 유지할 수 있습니다.
preference 네임스페이스에서 사용하는 앱 내부 저장소는 고유한 Key와 Value의 쌍으로 데이터를 저장하고 관리합니다.
언제 활용하면 좋나요?
유저의 '다크모드 여부', '푸시 수신 여부', '선호 언어' 같은 개인 설정을 앱 종료 후에도 유지하고 싶을 때, 사용자가 마지막으로 본 탭, 검색어, 필터 등을 저장해두고 다음 방문 시 자연스럽게 복구시킬 때 등 여러 상황에서 활용 할 수 있습니다.
주의사항
- 데이터가 암호화되지 않고 기기에 저장되므로 민감 정보는 저장전 암호화하여 저장해야합니다.
- 너무 많은 데이터를 저장하면 성능 저하가 발생할 수 있으므로, 소량의 데이터를 저장하고 유지하는 것을 권장드립니다.
메서드 목록
| 메서드 | 설명 | 추가된 버전 |
|---|---|---|
setData(key, data) | 지정한 키로 데이터를 저장합니다. | v1.2.0 |
getData(key, callback) | 지정한 키의 데이터를 불러옵니다. | v1.2.0 |
deleteData(key) | 지정한 키의 데이터를 삭제합니다. | v1.3.0 |
메서드 상세
setData(key, data)
- since: v1.2.0
타입 정의
function setData(key: string, data: string): void;
설명
앱 내부 저장소에 지정한 키(key)로 데이터를 저장합니다.
저장된 데이터는 앱이 종료되더라도 영구적으로 유지됩니다.
주의사항
- 데이터가 암호화되지 않고 기기에 저장되므로 민감 정보는 저장전 암호화하여 저장해야합니다.
- 너무 많은 데이터를 저장하면 성능 저하가 발생할 수 있으므로, 소량의 데이터를 저장하고 유지하는 것을 권장드립니다.
매개변수
| 이름 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
key | string | ✅ | 저장할 데이터의 키 값 |
data | string | ✅ | 저장할 데이터 값 |
반환 값
해당 메서드는 반환 값을 가지지 않습니다.
사용 예제
// ex. 'sample'을 키로 앱 내부 저장소에 데이터를 저장합니다.
Nachocode.preference.setData('sample', 'sample data');
// ex. 'sample'을 키로 앱 내부 저장소의 데이터를 조회합니다.
Nachocode.preference.setData('sample', data => {
if (data) {
alert(data); // sample data
} else {
alert('No received data!');
}
});
getData(key, callback)
- since: v1.2.0
타입 정의
function getData(key: string, callback: (data: string) => void): void;
설명
앱 내부 저장소에서 지정한 키(key)의 데이터를 조회합니다.
데이터가 존재하는 경우, 콜백 함수로 해당 데이터를 전달합니다.
매개변수
| 이름 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
key | string | ✅ | 조회할 데이터의 키 값 |
callback | (data: string) => void | ✅ | 조회한 데이터를 전달하는 함수 |