尊敬软件工程师,非常感谢您使用天圆产品“TZBeacon”,此文档为你介绍在Android平台下如何使用我们SDK快速开发应用。

Android平台基本要求:

  1. 支持蓝牙4.0

  2. Android 4.3以上系统

目前我们的 Android SDK,主要提供以下功能:

  1. 扫描周围设备

  2. 读取设备的参数

  3. 监控区设备进入、离开通知

  4. 配置设备参数

安装 SDK

一. 下载

您可以从下面的地址下载最新版的 Android SDK:

下载地址

二. 安装与配置

集成 SDK jar 包

在工程根目录新建 libs 文件夹,将下载的 SDK 解压到到该文件夹中。


修改 AndroidManifest.xml

  1. AndroidManifest.xml 中集成 SDK 所需要的权限

<manifest
    ...
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    ...
</manifest>


开始使用

一、应用程序初始化

首先你需要初始化SDK,然后启动扫描服务。以下为 SDK 启动的样例代码。

Activity extends BluetoothServer{
......
@Override
    protected void onCreate(Bundle savedInstanceState) {
    ......
    //初始化BluetoothServer
    super.Init();
    ......
    }
......
}

提示:

如果 Android 设备的蓝牙没有打开,请使用下面样例代码请求打开蓝牙:

Intent bluetoothIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
BluetoothAdapter.enable();
二、设置数据监听

你可以通过触发事件,来检测 Beacon 的出现,显示以及更新。样例代码如下:

@Override
public void OnBeaconsChang() {
    // 一次扫描结束事件 
    for (int i = 0; i < Beacons.size(); i++) {
    
    }              
}
@Override
public void OnBeaconEntered(Beacon beacon) {
    // 发现一个新的设备事件        
}
@Override
public void OnBeaconExited(Beacon beacon) {
    // 一个设备消失事件     
}

在这个接口中,设备信息更新频率为 1 秒;发现一个新的设备后,如果在 10 分钟内没有再次扫描到这个设备,则会回调设备消失事件。

提示:

三、监控设备进出状态

通常我们进入或离开某些设备时需要进行一些操作。下面是判断是否进入和离开 SN 为"TZ1507000001"的云子的样例代码:

@Override
public void OnBeaconsChang() {
    // 一次扫描结束事件 
    for (int i = 0; i < Beacons.size(); i++) {
    
    }              
}
@Override
public void OnBeaconEntered(Beacon beacon) {
    // 发现一个新的设备事件 
    if (beacon.SN.equals("TZ1507000001")){
        // 进入 SN 为"TZ1507000001" 的设备
    }              
}
@Override
public void OnBeaconExited(Beacon beacon) {
    // 一个设备消失事件  
    if (beacon.SN.equals("TZ1507000001")){
        //  SN 为"TZ1507000001" 的设备消失
    }             
}

提示:

四、读取设备状态和更新

下表为Beacon 类参数列表。

属性 描述
Name
名称
SN SN,设备唯一标识
Major iBeacon协议中的 major 信息
Minor iBeacon协议中的 minor 信息
UUID iBeacon协议中的 UUID 信息
RSSI 信号强度
Battery 电池电量
MacAddress 蓝牙Mac址地
MeasuredPower 1 米处测量 rssi
TransmitPower 广播功率
Interval 广播间隔
Protocol 协议类型


总结

至此,您已完成将 SDK 整合进您项目之中的全部工作。后面,您可以使用 SDK 的功能来完成您 App 与 TZONE BEACON 之间的互动,更多技术细节,请参考完整的 SDK 文档