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 | 31 |
Tags
- UIButton
- JPA
- Swift
- shorebird
- Firebase
- Realm
- error
- 맥
- Xcode
- Archive
- mac
- IOS
- Apple
- Code
- MacOS
- window
- FLUTTER
- 웹뷰
- Git
- iOS16
- SwiftUI
- rxswift
- github
- darkmode
- geofencing
- 개발자
- appstore
- 이미지
- 한글
- Session
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