搜索文档 /
开始 插件

BLE

此插件支持手机和蓝牙低能耗(BLE)外围设备之间的通信。

该插件为iOS和Android提供了一个简单的JavaScript API。

  • 扫描外围设备
  • 连接到外围设备
  • 阅读特征的价值
  • 将新值写入特征
  • 当特征值更改时获得通知

扫描外设时返回广告信息。连接到外围设备时返回服务、特征和属性信息。所有访问都是通过服务和特征UUID进行的。插件在内部管理句柄。

支持同时连接到多个外围设备。

https://github.com/don/cordova-plugin-ble-central

卡在科尔多瓦问题上?

如果你正在建设一个严肃的项目,你就负担不起花上几个小时进行故障排除。爱奥尼亚的专家为社区插件和卓越插件提供优质咨询服务。betway东盟体育app

今天就联系我们!

安装

npm安装cordova插件可编程中央 NPM安装@ IONIC-betway东盟体育appNative / BLE betway东盟体育app离子电容同步 betway东盟体育app爱奥尼亚cordova插件添加cordova插件 NPM安装@ IONIC-betway东盟体育appNative / BLE
betway东盟体育app必威滚球分析软件离子企业来自离子团队的完全支持和维护的插件。 了解更多 或者,如果您对此插件的企业版感兴趣 联系我们

支撑平台

  • 安卓
  • 网间网操作系统

用法

反应

看这里。

有棱角的


             
              进口
             
              {
             
              BLE
             
              }
             
              
             
              “@betway东盟体育appionic native/ble/ngx”
              ;
             
              构造函数
              (
               私有的
              ble
               :
              
               BLE
              )
             
              {
             
              }
             

外围数据

扫描和连接时,将外围数据传递给成功回调。扫描时传递有限的数据。


             
              {
             
              '姓名'
              :
             
              '电池演示'
              ,
             
              “身份证”
              :
             
              '20:FF:D0:FF:D1:C0'
              ,
             
              “广告”
              :
             
              [
              2.
              ,
              1.
              ,
              6.
              ,
              3.
              ,
              3.
              ,
              15
              ,
              24
              ,
              8.
              ,
              9
              ,
              66.
              ,
              97.
              ,
              116
              ,
              116
              ,
              101
              ,
              114
              ,
              121
              ]
              ,
             
              'rssi'
              :
             
              -
              55.
             
              }

连接后,外围对象还包括服务、特征和描述符信息。


             
              {
             
              '姓名'
              :
             
              '电池演示'
              ,
             
              “身份证”
              :
             
              '20:FF:D0:FF:D1:C0'
              ,
             
              “广告”
              :
             
              [
              2.
              ,
              1.
              ,
              6.
              ,
              3.
              ,
              3.
              ,
              15
              ,
              24
              ,
              8.
              ,
              9
              ,
              66.
              ,
              97.
              ,
              116
              ,
              116
              ,
              101
              ,
              114
              ,
              121
              ]
              ,
             
              'rssi'
              :
             
              -
              55.
              ,
             
              “服务”
              :
             
              [
             
              '1800'
              ,
             
              '1801'
              ,
             
              ‘180f’
             
              ]
              ,
             
              '特征'
              :
             
              [
             
              {
             
              “服务”
              :
             
              '1800'
              ,
             
              “特色”
              :
             
              “2a00”
              ,
             
              “财产”
              :
             
              [
             
              “读”
             
              ]
             
              }
              ,
             
              {
             
              “服务”
              :
             
              '1800'
              ,
             
              “特色”
              :
             
              ‘2a01’
              ,
             
              “财产”
              :
             
              [
             
              “读”
             
              ]
             
              }
              ,
             
              {
             
              “服务”
              :
             
              '1801'
              ,
             
              “特色”
              :
             
              '2a05'
              ,
             
              “财产”
              :
             
              [
             
              “读”
             
              ]
             
              }
              ,
             
              {
             
              “服务”
              :
             
              ‘180f’
              ,
             
              “特色”
              :
             
              '2a19'
              ,
             
              “财产”
              :
             
              [
             
              “读”
             
              ]
              ,
             
              “描述符”
              :
             
              [
             
              {
             
              “uuid”
              :
             
              '2901'
             
              }
              ,
             
              {
             
              “uuid”
              :
             
              '2904'
             
              }
             
              ]
             
              }
             
              ]
             
              }

广告数据

扫描设备时返回蓝牙广告数据。该格式因平台而异。在Android广告数据上将是原始的广告字节。iOS不允许访问原始广告数据,因此返回数据字典。

Android和IOS的广告信息似乎是广告数据和扫描响应数据的组合。

安卓


             
              {
             
              '姓名'
              :
             
              '演示'
              ,
             
              “身份证”
              :
             
              '00:1A:7D:DA:71:13'
              ,
             
              “广告”
              :
             阵列缓冲器
              ,
             
              'rssi'
              :
             
              -
              37
             
              }

将广告信息转换为UINT8阵列进行处理。 var adData=新的Uint8Array(外围设备广告)

网间网操作系统

请注意,iOS使用常量的字符串值 广告数据检索键 . 这在未来可能会发生变化。


             
              {
             
              '姓名'
              :
             
              '演示'
              ,
             
              “身份证”
              :
             
              'D8479A4F-7517-BCD3-91B5-3302B2F81802'
              ,
             
              “广告”
              :
             
              {
             
              'kcbaddatachannel'
              :
             
              37
              ,
             
              “kCBAdvDataServiceData”
              :
             
              {
             
              'fed8'
              :
             
              {
             
              “通过电话”
              :
             
              7.
             
              //数据未显示
             
              }
             
              }
              ,
             
              'kcbadvatalocalname'
              :
             
              '演示'
              ,
             
              “kCBAdvDataServiceUUIDs”
              :
             
              [
              'fed8'
              ]
              ,
             
              “制造数据”
              :
             
              {
             
              “通过电话”
              :
             
              7.
             
              //数据未显示
             
              }
              ,
             
              “KCBADVDATAXPOWERLEVEL”
              :
             
              32
              ,
             
              'kcbaddataisconeconeConnectable'
              :
             
              符合事实的
             
              }
              ,
             
              'rssi'
              :
             
              -
              53.
             
              }

类型化数组

此插件使用类型化数组或ArrayBuffers发送和接收数据。

这意味着您需要在发送数据之前将数据转换为ArrayBuffers,在接收数据时将数据转换为ArrayBuffers。


             
              //仅限ASCII码
             
              作用
             
              弦细胞
              (
               细绳
              )
             
              {
             
              var.
             大批
              =
             
              刚出现的
             
              UINT8阵列
              (
              细绳
              .
             
              )
              ;
             
              对于
             
              (
              var.
             
              =
             
              0
              ,
             L
              =
             
              细绳
              .
             
              ;
             
              <
             L
              ;
             
              ++
              )
             
              {
             大批
              [
             
              ]
             
              =
             
              细绳
              .
              charCodeAt
              (
             
              )
              ;
             
              }
             
              回来
             大批
              .
             缓冲器
              ;
             
              }
             
              //仅限ASCII码
             
              作用
             
              拜特斯特林
              (
              缓冲器
              )
             
              {
             
              回来
             一串
              .
              fromCharCode
              .
              申请
              (
              无效的
              ,
             
              刚出现的
             
              UINT8阵列
              (
             缓冲器
              )
              )
              ;
             
              }

您可以在上的这些文章中阅读有关类型化数组的更多信息 MDN HTML5岩石 .

UUID

uuids始终是字符串而不是数字。一些16位的uuids,例如'2220'看起来像整数,但它们不是。(整数2220在十六进制中为0x8Ac。)这不是128位UUID的问题,因为它们看起来像字符串82b9e6e1-593a-456f-be9b-9215160ebccac。所有16位UUID也应作为字符串传递给方法。

Baidu