Notice
Recent Posts
Recent Comments
Link
투케이2K
621. (ios/swift5) [기능 정리] CBPeripheralDelegate 설명 및 기능 사용 정리 - CBPeripheral 딜리게이트 본문
IOS
621. (ios/swift5) [기능 정리] CBPeripheralDelegate 설명 및 기능 사용 정리 - CBPeripheral 딜리게이트
투케이2K 2025. 1. 3. 20:00[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT5
[설명 정리]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Swift
- 개발 툴 : Xcode
- 기술 구분 : Bluetooth / CBPeripheral / CBPeripheralDelegate
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[설명 정리]
// --------------------------------------------------------------------------------------
1. CBPeripheral 은 앱이 중앙 관리자(인스턴스)를 통해 검색하는 원격 주변 장치를 나타냅니다
>> 주변 장치는 객체로 표현되는 UUID(Universally Unique Identifier)를 사용하여 자신을 식별할 수 있습니다
>> 주변 장치는 하나 이상의 서비스를 포함하거나 연결된 신호 강도에 대한 유용한 정보를 제공할 수 있습니다
>> Bluetooth 저에너지를 지원하는 원격 주변 기기에서 사용 가능한 서비스를 검색, 탐색 및 상호 작용할 수 있습니다
2. CBPeripheralDelegate 은 주변장치 서비스 사용에 대한 업데이트를 제공하는 프로토콜 및 대리자입니다
3. CBPeripheralDelegate 사용 가능 지원 범위 :
>> iOS 5.0 이상
>> 아이패드OS 5.0+
>> 맥 카탈리스트 13.0+
>> 맥OS 10.10 이상
>> tvOS 9.0 이상
>> 비전OS 1.0+
>> 워치OS 4.0+
4. CBPeripheralDelegate 서비스 발견 관련 정리 :
>> func peripheral(CBPeripheral, didDiscoverServices: (any Error)?) : 주변 서비스 검색이 성공했음을 대리인에게 알립니다.
>> func peripheral(CBPeripheral, didDiscoverIncludedServicesFor: CBService, error: (any Error)?) : 지정된 서비스 내에 포함된 서비스 검색이 완료되었음을 대리자에게 알립니다.
5. CBPeripheralDelegate 특성과 그 설명자 발견 관련 정리 :
>> func peripheral(CBPeripheral, didDiscoverCharacteristicsFor: CBService, error: (any Error)?) : 주변 장치가 서비스에 대한 특성을 찾았음을 대리인에게 알립니다.
>> func peripheral(CBPeripheral, didDiscoverDescriptorsFor: CBCharacteristic, error: (any Error)?) : 주변 장치가 특성에 대한 설명자를 찾았음을 대리인에게 알립니다.
6. CBPeripheralDelegate 특성 및 설명자 값 검색 관련 정리 :
>> func peripheral(CBPeripheral, didUpdateValueFor: CBCharacteristic, error: (any Error)?) : 지정된 특성의 값을 검색하는 데 성공했거나 특성의 값이 변경되었음을 대리자에게 알립니다.
>> func peripheral(CBPeripheral, didUpdateValueFor: CBDescriptor, error: (any Error)?) : 지정된 특성 설명자의 값을 검색하는 데 성공했음을 대리자에게 알립니다.
7. CBPeripheralDelegate 특성 및 설명자 값 쓰기 관련 정리 :
>> func peripheral(CBPeripheral, didWriteValueFor: CBCharacteristic, error: (any Error)?) : 주변 장치가 특성에 대한 값을 성공적으로 설정했음을 대리자에게 알립니다.
>> func peripheral(CBPeripheral, didWriteValueFor: CBDescriptor, error: (any Error)?) : 주변 장치가 설명자에 대한 값을 성공적으로 설정했음을 대리자에게 알립니다.
>> func peripheralIsReady(toSendWriteWithoutResponse: CBPeripheral) : 주변장치가 다시 특성 업데이트를 보낼 준비가 되었음을 대리인에게 알립니다.
8. CBPeripheralDelegate 특성 값에 대한 알림 관리 정리 :
>> func peripheral(CBPeripheral, didUpdateNotificationStateFor: CBCharacteristic, error: (any Error)?) : 주변 장치가 지정된 특성 값에 대한 알림 제공을 시작하거나 중지하라는 요청을 받았음을 대리자에게 알려줍니다.
9. CBPeripheralDelegate 주변 장치의 RSSI 데이터 검색 관련 정리 :
>> func peripheral(CBPeripheral, didReadRSSI: NSNumber, error: (any Error)?) : 주변 장치의 현재 RSSI(수신 신호 강도 표시기) 값을 검색하는 것이 성공했음을 대리자에게 알립니다.
10. CBPeripheralDelegate 주변 장치 이름 또는 서비스 변경 사항 모니터링 관련 정리 :
>> func peripheralDidUpdateName(CBPeripheral) : 주변장치 이름이 변경되었음을 대리인에게 알립니다.
>> func peripheral(CBPeripheral, didModifyServices: [CBService]) : 주변장치 서비스가 변경되었음을 대리인에게 알립니다.
11. CBPeripheralDelegate L2CAP 채널 모니터링 관련 정리 :
>> func peripheral(CBPeripheral, didOpen: CBL2CAPChannel?, error: (any Error)?) : L2CAP 채널을 열려고 시도한 결과를 전달합니다.
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------
[CBPeripheral : 애플 공식 사이트 설명]
https://developer.apple.com/documentation/corebluetooth/cbperipheral
[CBPeripheralDelegate : 애플 공식 사이트 설명]
https://developer.apple.com/documentation/corebluetooth/cbperipheraldelegate
[실시간 블루투스 목록 스캔 실시]
https://blog.naver.com/kkh0977/222539665274?trackingCode=blog_bloghome_searchlist
[블루투스 (bluetooth) 신호 활성 수행]
https://blog.naver.com/kkh0977/222558588251?trackingCode=blog_bloghome_searchlist
// --------------------------------------------------------------------------------------
반응형
'IOS' 카테고리의 다른 글
Comments