Я отправляю данные на подключенный аксессуар с помощью кабеля Apple.
Необходимо отправить данные в (максимальных) размерах 1 КБ. Я делаю это:
- (void)_writeData {
#define EAD_OUTPUT_BUFFER_SIZE 1024
while (([[_session outputStream] hasSpaceAvailable]) && ([_writeData length] > 0))
{
ALog(@"Writing..");
NSInteger bytesWritten = [[_session outputStream] write:[_writeData bytes] maxLength:EAD_OUTPUT_BUFFER_SIZE];
if (bytesWritten == -1)
{
ALog(@"write error");
break;
}
else if (bytesWritten > 0)
{
ALog(@"Reducing...");
[_writeData replaceBytesInRange:NSMakeRange(0, bytesWritten) withBytes:NULL length:0];
}
}
}
Но так я отправляю мусор и убиваю приложение.
Я не могу отладить код, потому что устройство использует кабель Apple, поэтому я не могу отладить его напрямую.