[Android] SharedPreference commit(), apply()
개요앱에서 중요한 요청을 실패할 경우 EncryptedSharedPreference를 사용해 정보를 저장하고 있다가 재요청을 날려야 하는 부분이 있었다.내가 원하는 부분인 onResumse 단계에서는 asynchronously한 동작과 함께 매핑된 데이터와 관련된 요청을 잘 수행하였다.그러나 문제는 sharedPreference객체의 edit 메서드 직후에 앱 자체를 crash를 발생시킬 경우였다.분명 Editor 클래스의 .edit()은 수행됐으나 SharedPreference에 저장되지 않는 것에 의문이 들어 찾아보니 commit과 apply의 차이에서 발생하는 문제였다. 해결요약하자면 commit은 디스크에 동기적으로 File write를 수행하나 main thread에서 사용할 경우 UI 렌더링..
2025.01.22