AsyncStorage 가 뭐야??

석진·2024년 2월 14일
0
post-thumbnail

📌AsyncStroage 란?

key 값으로 String을 저장

  • 유저에 대한 정보(accessToken, refreshToken) 기능을 보여줄지 말지, 마지막 접속 시간 등 임시정보 저장 등
  • Cookie 와 비슷한 사용 용도
  • Android: SQLite 에 저장
  • iOS : 네이티브 코드로 저장로직이 작성되어 있음

📌AsyncStorage.setItem

key값과 value 값을 넘겨 값을 저장 하는것 저장하는 value는 string으로만 저장

AsyncStorage.setItem(KEY,VALUE)
const values = {key: 'value'}
AsyncStorage.setItem('TEST_KEY', JSON.string(values));

📌AsyncStorage.getItem

값을 가져 오는것, string 또는 null을 리턴

const result = await AsyncStorage.getItem(KEY,VALUE)
const result = AsyncStorage.getItem('TEST_KEY');
console.log(JSON.parse(result));

📌AsyncStorage.removeItem

key값에 해당하는 value를 삭제하는 것

AsyncStorage.removeItem('TEST_KEY');
const result = await AsyncStorage.getItem('TEST_KET');
console.log(result); // null

📌AsyncStorage.clear

AsyncStorage의 모든 값을 삭제

AsyncStorage.clear();

📌AsyncStorage.mergeItem

Object안에서 같은 Key값이 있는 경우 한가지로 합쳐주는 것 , 자주 사용하지는 않음

📌그 외(etc)

multiGet, multiSet, multiMerge, multiRemove 각각 key값을 여러개 넘겨 한번에 받아오는 것

📌사용시 주의점(1)

Key값 중복으로 인한 value 덮어써짐 혹은 삭제된 사례

  • Unique한 문자열을 만들기 위해서 여러 노력들을 해봄 UUID 문자열 만들어 사용 ex) 43833a60-cad**** 등
  • 화면 또는 동작을 String으로 조합함 @/화면명/액션명

📌사용시 주의점(2)

AsyncStorage의 모든 함수는 Promise로 제공됨

const result = AsyncStorage.getItem('KEY') // result is Promise
const result = await AsyncStorage.getItem('KEY') // result is value

📌사용시 주의점(3)

Android에서 최대 저장 사이즈는 6MB
Android에서 한번에 가져 올 수 있는 사이즈는 2MB
profile
내 서비스 만들기

0개의 댓글