iOS 블 루 투 스 장치 이름 캐 시 문제 해결 방법
앱 을 중심 으로 다른 블 루 투 스 장 치 를 연결 할 때.
첫 연결 이 성공 하면 iOS 시스템 에 서 는 이 외부 캐 시 를 기록 합 니 다.
다음 에 다시 검색 할 때 검 색 된 블 루 투 스 장 치 를 직접 인쇄(peripheral.name)하면 이전 캐 시 에 있 던 블 루 투 스 이름 을 얻 을 수 있 습 니 다.
이 기간 에 블 루 투 스 장치 가 이름 을 업데이트 하면(peripheral.name)이 매개 변 수 는 변 하지 않 기 때문에 장치 의 이름 을 다른 방식 으로 가 져 와 야 합 니 다.라디오 패 킷 에 kCBAdvDataLocalName 이라는 필드 가 있어 현재 장치 이름 을 실시 간 으로 가 져 올 수 있 습 니 다.
3.문제 해결
OC 와 Swift 의 해결 방법 을 알려 드 리 겠 습 니 다.
OC
-(void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary<NSString *,id> *)advertisementData RSSI:(NSNumber *)RSSI{
NSString *localName = [advertisementData objectForKey:@"kCBAdvDataLocalName"];
}
Swift
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) {
let localName = advertisementData["kCBAdvDataLocalName"]
}
총결산iOS 블 루 투 스 장치 이름 캐 시 문제 해결 방법 에 대한 이 글 은 여기까지 입 니 다.iOS 블 루 투 스 장치 이름 캐 시 내용 에 대해 서 는 이전 글 을 검색 하거나 아래 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.