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
- swift autolayout
- 스위프트 웹뷰
- flutter 회전
- 푸시 데이터 저장
- FlutterView MethodChannel
- 스위프트 카메라
- 플러터 뷰 컨트롤러
- Swift flutterview
- 앱 꺼졌을 때 푸시 데이터 저장
- 안드로이드 에러
- Flutter UIKitView MethodChannel
- swift sms
- 안드로이드 앨범
- native flutter view
- silent push
- 안드로이드 바로가기
- 안드로이드 FCM
- Flutter NativeView
- 노티피케이션 익스텐션
- 스위프트 테이블 뷰 셀
- 스위프트 UserDefaults
- flutter rotate
- 스위프트
- 스위프트 푸시
- 스위프트 앨범
- 앱 백그라운드 푸시 데이터 저장
- swift 문자
- Swift flutterviewcontroller
- 안드로이드 숏컷
- NotificationService Extension
Archives
- Today
- Total
Things take time
[SWIFT] plist파일 읽기 및 UserDefaults 본문
[Info.plist]
프로젝트 파일이나 워크스페이스(프로젝트보다 상위의 개념으로 여러 프로젝트 혹은 코코아팟으로 다운받은 라이브러리를 모두 포함한 개념)을 생성하면 같이 들어있는 파일 중에 plist파일이 존재한다. 이 파일의 용도는 무엇일까.
plist = property file로 필수적인 환경 설정 정보들을 포함하는 구조화된 텍스트 파일이며, xml구조로 된 utf-8로 인코딩된 파일이다. 또한 key, value값으로 이루어져 있으며 Info.plist란 이름으로 생성되고, I로 시작하는 이름은 필수적이다.
물론 이 Info.plist파일처럼 자동 생성된 파일말고 사용자가 직접 지정하여 생성할 수 있는데 이 방식은 <project name>-Info.plist로 생성하면 된다.
let infoDic = Bundle.main.infoDictionary! let appName = infoDic["CFBundleName"] as! String let SCOMIDX = infoDic["SCOMIDX"] as! Int print("appname : \(appName)") print("SCOMIDX : \(SCOMIDX)")
CF?
Core Foundation의 약자로 OS의 커널, 써드파티의 라이브러리 사용 등을 위해 필요한 API의 집합이 CF이며 이 데이터 타입은 CFArray라고 한다. 그러므로 번들 이름이나 기타 정보들은 Core Foundation을 통해 얻어낼 수 있다는 것을 의미한다. Object-C 오픈 소스이며.. Object-C를 갖고 있지 않는 플랫폼이나 필요할때만 사용하라고 한다.
[UserDefaults]
안드로이드의 SharedPreference의 역할로 어플이 삭제되기 전까지 유지할 수 있는 데이터, SQLite가 무겁다면, 이 것으로 사용하는 것도 좋다. 물론 복잡하며 구조화된 데이터라면 이 것으로는 부족하다.
저장할 때
let SCOMIDX = infoDic["SCOMIDX"] as! Int UserDefaults.standard.set(SCOMIDX, forKey: "SCOM")
불러 올 때
let scom = UserDefaults.standard.integer(forKey: "SCOM") print("\(scom)")
'iOS (기능)' 카테고리의 다른 글
[SWIFT] 밴드 링크 기능 추가하기 (0) | 2017.05.30 |
---|---|
[SWIFT] 카카오 링크 기능 추가하기 (6) | 2017.05.25 |
[SWIFT] 웹뷰와 자바스크립트 연동 (Native <-> JavaScript 통신 방법) (18) | 2017.05.17 |
[SWIFT] 이미지 파일 서버(php) 업로드 하기 (5) | 2017.05.17 |
[SWIFT] 카메라 사진 찍기, 앨범에서 사진 가져오기 (0) | 2017.05.15 |