2017-02-13 5 views
0

iOS 앱에서 주변기기 역할을 구현 중이며 광고를 받고 액세스 할 수있는 맞춤 서비스를 성공적으로 구성 할 수있었습니다.CoreBluetooth - iPhone에 구현 된 Peripherial의 일반 액세스 (1800)?

이제 장치 이름과 같이 일반 액세 스 프로필 값을 변경할 수없는 것으로 보입니다. "1800"으로 구성된 CBMutableService를 추가하고 있지만 스캔 목록에서 여전히 "일반 전화"값을 볼 수 있습니다.

변경할 방법이 있습니까?

답변

2

귀하의 서비스는 자체 주변 장치가 아닙니다. 그것은 전체 장치 (전화)를위한 공유 주변 장치의 일부입니다. 따라서 GAP을 직접 제어 할 수는 없으며 서비스를 제공하기 만하면됩니다.

즉, 제어하는 ​​동안 주변 장치의 광고 이름을 설정하는 것은 간단합니다. 당신은 단지 startAdvertising 사전에 CBAdvertisementDataLocalNameKey 함께 전달합니다

[self.peripheralManager startAdvertising:@{ 
    CBAdvertisementDataServiceUUIDsKey : @[[CBUUID UUIDWithString:MY_SERVICE_UUID]], 
    CBAdvertisementDataLocalNameKey : @"MyDevice" 
}]; 

참고 사용자가 제어 할 수있는 유일한 일이 로컬 이름과 서비스 UUID가 있음. 제조업체 데이터, 전송 전력 등과 같은 것을 설정할 수 없습니다.

+0

감사합니다. 오리지널 문서에서이 정보를 찾는 것이 매우 어려웠습니다. 서비스 1800이 여전히 일반 전화를보고한다는 것을 제외하고는 지금 장치 이름을 설정할 수 있지만 지금은 변경할 수 없습니다. –