将图像发送到非ios设备

时间:2016-12-11 06:31:31

标签: ios iphone bluetooth-lowenergy core-bluetooth

我必须创建一个应用程序,它将通过支持BTLE 4.0的蓝牙检测非ios设备。

我有以下怀疑:

  1. 是否可以使用BTLE 4.0将图像从iphone应用程序传输到非ios设备
  2. 我搜索了一些关于中心和外围设备的教程。我的理解是在这种情况下iphone应用程序将是外围设备和非ios设备将是核心?我是对的
  3. this code能否满足我的所有要求

1 个答案:

答案 0 :(得分:0)

  1. 是的,图像可以转换为数据,数据可以通过蓝牙发送。要将UIImage转换为NSData,您必须决定所需的格式。你可以使用UIImageJPEGRepresentation 要么 UIImagePNGRepresentation
    任何一个都会将UIImage转换为NSData。
  2. 不,你错了。 iOS设备有一个中央管理器(CBCentralManager),可以找到其他设备(CBPeripheral)。那些其他设备有许多服务(CBService),每个服务可以有许多你连接的特性(CBCharacteristic)。创建连接后,您可以发送(写入)或接收(读取)数据。
  3. 代码看起来很不错。但SENDING数据的主要观点似乎并不存在。您可以使用WRITE命令从iOS发送到蓝牙外设 - 它将自动分成小数据包。大小限制为64K,每千字节可能需要大约一秒 - 所以它很慢。使用函数[peripheral writeValue:data forCharacteristic: characterstic type:CBCharacteristicWriteWithResponse];(您必须保留对外围设备和特征的引用)。