[Swift] Realm 기본 개념 및 간단 예제
·
iOS/Swift
안녕하세요 🙇🏻‍♂️저번 포스팅 Core Data에 이어서 이번 포스팅에서는 Realm에 대해 다뤄보겠읍니다! [iOS] Core Data 기본 개념 및 간단 예제안녕하세요 🙇🏻‍♂️이번 포스팅에서는 Core Data에 대해 다뤄보겠읍니다! 포스팅은 편의상 편의 말투로 진행함다 😎  본문으로 들어가기 전에iOS, 면접 단골 질문인 해당 질문을 본적이 있ukseung2.tistory.com 포스팅은 편의상 편의 말투로 진행함다 😎 Realm이란?Realm은 모바일과 웹 애플리케이션을 위한 경량의 NoSQL 데이터베이스입니다. 주요 특징은 다음과 같습니다:편리한 데이터 모델링: Realm은 객체 지향적 데이터 모델을 사용합니다. 이를 통해 복잡한 데이터 구조를 간단히 정의하고 조작할 수 있습니다...
[iOS] Core Data 기본 개념 및 간단 예제
·
iOS/Swift
안녕하세요 🙇🏻‍♂️이번 포스팅에서는 Core Data에 대해 다뤄보겠읍니다! 포스팅은 편의상 편의 말투로 진행함다 😎  본문으로 들어가기 전에iOS, 면접 단골 질문인 해당 질문을 본적이 있을 것 임앱의 콘텐츠나 데이터 자체를 저장/보관하는 특별한 객체를 무엇이라고 하는가? [iOS] 면접 답변 정리이런식의 단순암기는 지양하지만 급한분들을 위해 가급적 가볍게 작성되었습니다. 제 경험을 바탕해서 작성하였으니 무수한 태클, 피드백, 훈수 부탁드립니다.작성되지 않은 질문은 작성중입ukseung2.tistory.com 해당 답변에 나는 "데이터베이스, 그 중 UserDefaults를 사용해 보았다." 라고 답변하였는데사실 UserDefaults 말고도 iOS에서 사용할 수 있는 데이터베이스가 많은데.뭐가..
[Swift] Framework,SDK 생성 및 import 하는 방법
·
iOS/Swift
안녕하세요 🙇🏻‍♂️오랜만이에오 ㅎㅎ 포스팅이 소홀했네요,, 다시 열심히 포스팅하기 도전 💪🏻 이번에 Objective-C로 만들어진 Project가 있는데해당 Project를 Swift로 migration할 예정이라 기록 해봅니다!포스팅은 편의상 편의 말투로 진행함다 😎 1. Xcode 열기 -> Create New Project... 2. Framework & Library, Framework 선택후 Next 3. Product Name 기입후 Next Include Tests와 Include Documentation은 필요하신 분만 체크 바람!UnitTest와 프로젝트에 대한 Documentation을 포함할건지 물어보는 것(나중에 추가/삭제 가능)저는 UnitTest를 진행할 예정이기 때..
[Swift] Storyboard없이 CodeBaseUI 코드 구현
·
iOS/Swift
안녕하세요 욱승입니다!오늘은 스토리보드 없이 CodebaseUI를 구현 해볼까 합니다!포스팅은 편의상 반말루 Swift의 UI는 두개로 나뉘는데 UIKit과 SwiftUI로 나뉘어요Storyboard는 UIKit으로 분류되는데요새는 Storyboard로 UI를 그리기도 하지만 CodeBase로만 UI를 그리는 경우도 있답니다.   CodeBaseUI 구현의 장단점장점1. 협업 및 유지보수가 용이2. 앱이 실행될때 Storyboard에 비해 무겁지 않음3. 앱이 커지면 커질수록 장점을 가지는 구현 방법(1번의 이유) 단점1. 러닝커브가 발생2. Storyboard와는 다르게 한눈에 볼수는 없다  그래서 어떻게 하냐..!? 1. 스토리보드 파일 삭제 2. 프로젝트 Build Setting > Info.pli..
[Swift] 앱 빌드 오류, failed: Operation not permitted (1)
·
iOS/Swift
안녕하세요 욱승입니다!오늘은 오류 포스팅을 해볼까합니다!포스팅은 편의상 반말루  오류 메시지 해결 방안보아하니 Pod(라이브러리)쪽 오류인듯 보이더라.. 찾아보니 Xcode15에서 최근 들어 많이 보이는 오류로 Build Setting에 대한 오류임! 내가 해봤던 해결책은 개발자들이라면 다 해보았던  1. DerivedData 삭제2. 재부팅3. Podfile Update(업데이트) 혹은 deintegrate후 install(재설치)4. 해당 파일쪽 chmod 권한 수정 위에 4가지 방법은 해결책이 아니였고 찾아보기론 Xcode15부터 해당 옵션 Default값이 NO에서 YES로 변경 되었다고 들었음! 해당 옵션이 Yes로 되어있을탠데 No로 변경하면 해결됨!  XCode내에서 스크립트를 사용하지 않는..
[Swift] RxSwift + MVVM, FaceID & TouchID authentication
·
iOS/Swift
안녕하세염 욱승입니당 이번 포스팅에서는 앱에서 필수로 쓰이는 FaceID 및 TouchID 인증을 알아보겠읍니다 포스팅은 편의상 반말루 ㅋ import import LocalAuthentication 해당 라이브러리는 Apple 내장 라이브러리라 Cocoapods이나 Packages에 추가할 필요 음슴 info.plist FaceID를 사용하는 기기면 Privacy - Face ID Usage Description를 추가해조야댐 구현(View) // // LocalAuthenticationViewController.swift // SwiftPractice // // Created by ukseung.dev on 2023/10/05. // import Foundation import UIKit import..
[Swift] Get DeviceModel Name, 디바이스 모델명 가져오기
·
iOS/Swift
안녕항셍용 욱승임다 시뮬레이터에 이어서 디바이스 모델명 가져오는 코드를 작성해보겠슴당시뮬레이터는 'Simulator'  함수func getModelName() -> String { var systemInfo = utsname() uname(&systemInfo) let machineMirror = Mirror(reflecting: systemInfo.machine) let model = machineMirror.children.reduce("") { identifier, element in guard let value = element.value as? Int8, value != 0 else { return identifier } return identifi..
[Swift] 시뮬레이터 디바이스 모델명 가져오기 / Get Simulator IPhone Model Name
·
iOS/Swift
해당 함수를 사용하면 시뮬레이터의 모델명을 가져올수 있음 func deviceModelName() -> String? { var modelName = ProcessInfo.processInfo.environment["SIMULATOR_DEVICE_NAME"] if modelName!.count > 0 { return modelName } let device = UIDevice.current let selName = "_\("deviceInfo")ForKey:" let selector = NSSelectorFromString(selName) if device.responds(to: selector) { modelName = String(describing: device.perform(selector, wi..
[Swift] 화면이동시 SafeArea Background Color이 변경 되는 이슈
·
iOS/Swift
안녕하세요 욱승임당 이번 포스팅에서는 사소한데 사소하기엔 시간이 좀 걸린 이슈에 대해 포스팅 해볼까 합니다 이슈 화면 이동 할때 상단에 SafeArea Background Color가 일시적으로 변경되는게 보이시나요? 결론부터 말해주면 문제점은 SafeArea의 색과 네비바의 색이 불일치 하기 때문에 저러코롬 이상하게 화면이동 되는 것! 임! 그래서 SafeArea Background Color를 .white로 변경해주믄 댐 이슈 해결 그 중 'SafeAreaBrush'라는 라이브러리를 사용하여 이슈를 해결했다. Reference [iOS/Swift] Safe Area를 색칠하는 방법 노치 디자인의 Safe Area를 색칠하는 여러 가지 방법 위의 이미지처럼 상단과 하단 Safe Area의 색을 다르게 ..
[Swift] Hotspot Configuration, 핫스팟 연결
·
iOS/Swift
안녕하세요 욱승임다ㅎ 이번 포스팅에서는 기기간 핫스팟 연결을 구현 해보겠읍니당 Capability 작동 방식 소스코드 View // // HotspotConfigurationViewController.swift // SwiftPractice // // Created by ukseung.dev on 2023/05/22. // import Foundation import UIKit import RxSwift final class HotspotConfigurationViewController: UIViewController, UIViewControllerAttribute { let viewModel = HotspotConfigurationViewModel() let disposeBag = DisposeBag(..
[Swift] RxSwift+MVVM, Sign In with Apple 애플 로그인
·
iOS/Swift
안녕하세요 욱승임다 이번 포스팅에서는 RxSwift와 MVVM패턴을 활용한 애플 로그인을 포스팅 해보겠읍니다 ㅋ Capability 추가 해주지 않음 에러나요 컴파일 에러가 나는건 아니고 런타임 에러가 나더라구염 구현 결과 저저 userIdentifier값은 애플 아이디마다 고유한 값이라 바뀌지 않음! 그래서 로그인 할때마다 동일 값을 리턴받기 때문에 사용자를 식별할수 있음! 나머지 성, 이름, 이메일이 보이는걸 확인할 수 있당 두번째 캡쳐본에서 Hide My Email을 했다면 성, 이름, 이메일이 nil로 리턴됨 ! 만약 Hide My Email을 막고 싶다면 예제코드(RxSwift + MVVM) Model // // User.swift // SwiftPractice // // Created by u..
[Swift] UITableView Cell 밀어서 삭제
·
iOS/Swift
안녕하세요 욱승임다 ㅋ 좋은 주말보내고 계신가요? ㅎㅎ 이번포스팅에서는 UITableView Cell을 밀어서 삭제하는 동작을 구현해볼게요 예제 예제 코드 import Foundation import UIKit import SnapKit class SwipeToDeleteCellViewController: UIViewController, UIViewControllerAttribute { var navTitle: String? var lastContentOffset: CGFloat = 0.0 var tableViewArray: [Int] = [] lazy var tableView = UITableView().then { $0.delegate = self $0.dataSource = self $0.regis..
욱승
'iOS/Swift' 카테고리의 글 목록