2016-09-13 2 views
0

블루투스 기반 응용 프로그램에서 작업 중이며 iPhone에서 다른 장치로 데이터를 보내려고 할 때 문제가 있습니다. 이에블루투스를 통해 몇 가지 값을 동시에 전송합니다.

- (void)sendData:(NSInteger)mel { 
    NSData *myData = [NSData dataWithBytes:&mel length:sizeof(mel)]; 
    [self.myDevice writeValue:myData forCharacteristic:self.myCharacteristic type:CBCharacteristicWriteWithoutResponse]; 
} 

하지만, 동시에 2 개 이상의 값을 보낼 필요가 몇 가지 특성 (예 : 그냥 하나 개의 값을 보낼 때

나는 이런 식으로 뭔가를 사용하여, 아무런 문제가 없다 케이스, 변수 멜과 다른 하나) 그러나 나는 아직 그것을 할 수 없었다.

누군가이 작업을 수행하는 방법을 알고 있습니까? 미리 감사드립니다. 나는이 두 값을 보내려고 무엇

UPDATE 1

unsigned char bytes[] = {mel, interval}; 
NSMutableData *myData = [NSMutableData new]; 
[myData appendBytes:&bytes length:sizeof(bytes)]; 
[self.myDevice writeValue:myData forCharacteristic:self.myCharacteristic type:CBCharacteristicWriteWithoutResponse]; 

이다 그러나 두 번째 값은 당신이 sizeof(bytes)을 사용할 수 없습니다

+0

시도한 내용으로 질문을 업데이트하고 현재 어떤 문제가 있는지 설명하십시오. – rmaddy

+0

@rmaddy 나는 내가 시도한 것을 가지고 질문을 업데이트했다. –

답변

0

존재하지 않은 경우처럼이 작품 배열의 바이트 수를 취득합니다. 4은 단순히 char *의 크기이므로 반환 할 것입니다.

한 옵션은 sizeof(bytes) 대신 sizeof(mel) + sizeof(interval)을 사용하는 것입니다.

관련 문제