I need to transmit an integer through GameKit using sendDataToAllPeers:withDataMode:error: but I don\'t know how to convert my NSNumber to NSData in order to se
I would not recommend NSKeyedArchiver for such a simple task, because it adds PLIST overhead on top of it and class versioning.
Pack:
NSUInteger index = ;
NSData *payload = [NSData dataWithBytes:&index length:sizeof(index)];
Send:
[session sendDataToAllPeers:payload withDataMode:GKSendDataReliable error:nil];
Unpack (in the GKSession receive handler):
NSUInteger index;
[payload getBytes:&index length:sizeof(index)];
var i = 123
let data = NSData(bytes: &i, length: sizeof(i.dynamicType))
var i2 = 0
data.getBytes(&i2, length: sizeof(i2.dynamicType))
print(i2) // "123"