Использование NSKeyedArchiver и NSData для отправки пользовательского изображения по Bluetooth
-
18-09-2019 - |
Вопрос
Мне было интересно, возможно ли отправить UIImage по Bluetooth после кодирования его в NSMutableData с помощью NSKeyedArchiver.Это то, что я имел в виду:
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:[UIImage imageNamed:"test.png" forKey:kImageKey];
[archiver finishEncoding];
Решение
Вы не можете архивировать UIImage
подобные случаи.Сначала вам нужно будет создать внешнее представление, например PNG или JPG.Вы можете сделать это, например, с помощью UIImagePNGRepresentation()
функция.Это вернет NSData
экземпляр, содержащий сжатое изображение в формате PNG.Это NSData
экземпляр может быть использован с NSArchiving.
Не связан с StackOverflow