安卓蓝牙4.0开发之主从机代码

在ble协议中,有两个角色,周边和中央。其中周边负责提供数据,中央负责处理周边提供的数据。一个设备,既可以是中央也可以是周边。中央和周边相互依存,缺一不可。

先了解一下基本的概念:

GATT:他是通过ble连接,读写属性类小数据profile的通用规范。

ATT:GATT是基于ATT的。根据英文的翻译是属性协议。

下面来看一下ble sdk中的四个关键类:

A.BluetoothGattServer:作为周边来提供数据

B.BluetoothGattServerCallback:返回周边的状态。

C.BluetoothGatt:作为中央使用,处理周边的数据。

D.BluetoothGattCallback:返回中央状态和周边提供的数据。



创建一个周边

1.new一个特征

character=new BluetoothGattCharacteristic(UUID,

BluetoothGattCharacteristic.PROPERTY_NOTIFY, 

BluetoothGattCharacteristic.PERMISSION_READ

BluetoothGattCharacteristic.PROPERTY_NOTIFY,BlueetoothGattCharacteristic.PERMISSION_READ);

第一个参数为自定义的特征的uuid,第二个参数为这个特征支持的状态(READ,WRITE,NOTIFY),第三个参数是为这个特征添加的权限。

2.new一个服务

service=new BluetoothGattService(UUID,BluetoothGattService_SERVICE_TYPE_PRIMARY);


3.把特征添加到服务

service.addChararicteristic(character);


4.获取BluetoothManager

manager=(BluetoothManeger)getSystemService(Context.BLUETOOTH_SERVICE);



5.打开/获取周边

BluetoothGattServer gatt_server=manager.openGattServer(this,new BluetoothGattCallback(){...});


6.把servier添加到周边

gatt_server.addService(service);


7.广播service

以上就是从机的代码

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值