+[IOBluetoothDevice deviceWithAddress:]
был представлен в Mac OS X v10.7 SDK. Более ранние версии OS X предоставляют +[IOBluetoothDevice withAddress:]
вместо этого. Вы должны быть в состоянии сделать что-то вроде:
if ([[IOBluetoothDevice class] respondsToSelector:@selector(deviceWithAddress:)])
actualBTDevice = [IOBluetoothDevice deviceWithAddress:&addr];
else
actualBTDevice = [IOBluetoothDevice withAddress:&addr];
Кроме того, у вас есть утечка объекта, который вы создаете с помощью
actualBTDevice = [[IOBluetoothDevice alloc] init];
, так как вы немедленно назначаете другой объект этой переменной.