Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Code
- Xcode
- FLUTTER
- 한글
- Git
- SwiftUI
- 개발자
- iOS16
- Swift
- Notification
- window
- error
- github
- Firebase
- darkmode
- appstore
- IOS
- view
- MacOS
- Archive
- Realm
- mac
- JPA
- 웹뷰
- stack
- rxswift
- UIButton
- Session
- Python
- Apple
Archives
- Today
- Total
EEYatHo 앱 깎는 이야기
Swift ) UserDefaults, KeyChain - EEYatHo iOS 본문
반응형
UserDefaults
- 속성 목록 데이터들만 넣을 수 있다. ( NSData, NSString, NSNumber, NSDate, NSArray, NSDictionary )
.plist(property list) 파일 형태로 저장되기 때문이다. - 앱 내의 Library/Preferences 폴더에 저장된다.
- 사용자 정의 개체는 Encoding을 통해 NSData로 전환하여 넣을 수 있다.
- 큰 데이터는 넣는 것은 좋지않다. 앱이 실행될 때 UserDefaults의 plist파일이 메모리에 한번에 load되기 때문이다.
- 앱 사용자가 특정 툴을 사용하는 등 UserDefaults에 쉽게 접근하고 수정할 수 있다.
따라서 인앱 구매 여부, API key 등 보안이 필요한 데이터를 넣어서는 안된다.
KeyChain
- 보안에 민감한 데이터를 쉽게 사용할 수 있도록 MacOS, iOS에서 제공하는 암호화된 컨테이너이다.
- item 이라는 데이터 저장 단위를 사용한다.
- 동일한 개발자가 만든 앱은 키체인을 공유할 수 있다. (특정 앱에서 로그인하면 다른 앱에서 로그인하는 기능 등)
- 앱을 제거하고 설치해도 남아있다. (사용자가 지우지 않는 이상)
'iOS, Swift > Swift Theory' 카테고리의 다른 글
Swift ) 고차함수 - EEYatHo iOS (2) | 2022.09.23 |
---|---|
Swift ) 유니코드, 한글, 정규화 - EEYatHo iOS (0) | 2022.03.29 |
Swift ) Deferred Deeplink - EEYatHo iOS (0) | 2022.02.22 |
Swift ) requestAuthorization, registerForRemoteNotifications - EEYatHo iOS (0) | 2022.02.15 |
Swift) ColorSpace, display P3, sRGB - EEYatHo iOS (0) | 2022.01.25 |
Comments