본문 바로가기

iOS랑 친해지기16

[iOS] BLE / CoreBluetooth 정리 (Swift) BLE란?? - Bluetooth Low Energy - 전력 소비를 보완하는 저전력 블루투스 - 통신 속도보다는 전력 소모를 줄이는 것에 초점을 맞춤 - Bluetooth4.0에 특화된 기술임 BLE를 이용한 디바이스 종류 1. Bluetooth Smart (BLE, 단일 모드) - 단일 모드, 듀얼 모드 디바이스들과 통신 가능 - BR/EDR만 지원하는 디바이스는 불가 - 심박수 모니터 등 * BR/EDR(기존 블루투스) - 블루투스 1.0부터의 무선 표준 규격 2. Bluetooth Smart Ready(BR/EDR/BLE, 듀얼 모드) - BR/EDR만 지원하는 디바이스도 통신 가능 - 블루투스와 단일모드 디바이스들로부터 데이터를 받아 유용한 정보로 변환 - 스마트폰, PC, TV 등 BLE 방.. 2023. 12. 28.
[iOS] CompletionHandler (비동기처리) 직역 The completion handler to execute after the activity view controller is dismissed. 액태비티 뷰 컨트롤러가 해제된 후 실행할 완료 핸들러 - 비동기(작업이 순차적으로 실행되지 않고 별도의 스레드나 큐에서 실행되는) 작업이 완료되었을때 실행되는 클로저 - 대표적으로 네트워크 요청의 응답 처리, 파일 다운로드 및 데이터 처리 등이 있다. - 이 프로퍼티는 UIActivityViewControllerCompletionHandler 타입의 클로저를 저장한다. - 클로저는 nullable로 설정되어 있어 값을 가질 수도있고, nil일 수도 있다. - nonatomic: 멀티 스레드 환경에서 해당 프로퍼티에 동시에 접근하지 않는다. - copy:.. 2023. 8. 31.
[iOS] Switch must be exhaustive (.none / .some) 버튼의 텍스트에 따라 경우를 달리하고 싶었지만 다음과 같은 오류가 발생했다. Switch문은 남김없이 완전해야 한다고 한다. default 대신 .none 과 .some의 경우가 생겼다. .none - title의 값을 가지지 않을 경우 .some - 그 외("Next Word", "Solving a problem") title 값을 가질 경우 2023. 8. 17.
[iOS] 백그라운드일때 이벤트 발생 (NotificationCenter) - 등록된 옵저버에게 동시에 정보를 브로드 캐스트 할 수 있는 클래스 - NotificationCenter에 등록된 이벤트가 발생하면 이벤트에 대한 행동을 취함 - 백그라운드, 비동기 작업의 결과 등 현재 작업의 흐름과 다른 흐름의 작업으로부터 이벤트를 받을떄 사용함 옵저버 추가 addObserver(observer:selector:name:object:) - observer: 옵저버가 될 객체 - selector: 이벤트가 발생했을때 호출될 메서드 - name: 등록하려는 이벤트 이름 (NSNotification.Name 타입) - objcet: 발송자가 옵저버에게 보내려고 하는 객체 - NSNotification.Name: 이벤트의 이름을 나타내는 타입. 주로 문자열 상수로 사용되며, 이벤트 식별에 .. 2023. 8. 15.