物联网开发平台 Android 智能设备(登录与注册)

这篇将介绍如何快速完成腾讯云物联网(IoT)设备端 SDK 的接入,跑通登录功能。

相关产品
物联网开发平台 产品页,含版本规格、价格与购买入口。

一、开通服务

在使用 IoT 设备端 SDK 前,你需要前往控制台,创建产品并在产品下创建设备。具体步骤参见 开通服务。

开通服务后,请记录以下设备三元组信息,在后续 登录 步骤中会用到:

·ProductId(产品 ID)

·DeviceName(设备名称)

·DeviceSecret(设备密钥)

注意:设备三元组是设备登录平台的唯一身份凭证,请妥善保管 DeviceSecret,避免硬编码提交到公共代码仓库。

二、环境准备

·Android Studio 3.5 及以上版本。

·最低兼容 Android 5.0(SDK API Level 21)及以上。

三、创建项目

参考以下步骤创建一个新的 Android 项目。如果已有项目,可跳过本节。

1. 打开 Android Studio,选择 New Project(新建项目)。

2. 选择 Empty Views Activity 模板,单击 Next。

3. 在 Configure your project 页面配置:

·Language 选择 Java。

·Minimum SDK 选择 Android 5.0(API 21)及以上。

·Build configuration language 选择 Groovy DSL (build.gradle)。

四、集成 SDK

1. 在 app/build.gradle(非根目录的 build.gradle)的 dependencies 中添加 TRTC SDK 以及 IoT SDK 依赖:

dependencies { //TRTC SDK implementation 'com.tencent.liteav:LiteAVSDK_TRTC:latest.release' // 物联网设备端 SDK implementation 'com.tencent.liteav.iot:tx-iot-device:latest.release'}

2. 完成配置后,在 Android Studio 工具栏单击 Sync Now,SDK 将自动下载并集成到工程中。出现 Build successful 即表示成功。

五、步骤 1:初始化 SDK

调用 TXIoTDeviceEngine.getInstance 获取 SDK 实例,并通过 TXIoTDeviceEngine.initSDK 初始化,以及注册日志回调和设备状态推送监听。

参数 类型 说明
storagePath String 本地持久化目录;可为 NULL;非空时长度须合法(实现侧上限约 256)。
logLevel TXIoTDeviceEngine.LogLevel 日志级别。
region String 地域。

TXIoTDeviceEngine ioTDeviceEngine = TXIoTDeviceEngine.getInstance(getApplicationContext());ioTDeviceEngine.addListener(new TXIoTDeviceEngine.Listener() { @Override public void onLog(TXIoTDeviceEngine.LogLevel level, String log) { Log.d(TAG, "onLog: level = " + level + ", log = " + log); } @Override public void onDeviceStateChanged(TXIoTDeviceEngine.DeviceState oldState, TXIoTDeviceEngine.DeviceState newState) { Log.d(TAG, "onDeviceStateChanged: oldState = " + oldState + ", newState = " + newState); }});//初始化 SDKTXIoTDeviceEngine.Config config = new TXIoTDeviceEngine.Config();config.storagePath = "file_path";config.logLevel = TXIoTDeviceEngine.LogLevel.INFO;config.region = "china";//国内取值为china,国外取值为us-east、europe、ap-bangkokioTDeviceEngine.initSDK(config);

六、步骤 2:登录

调用 TXIoTDeviceEngine.login 完成鉴权并登录,并通过回调监听登录结果。

参数 类型 说明
productId String 产品 ID。
deviceId String 设备名称,即 DeviceName。
deviceSecret String 设备密钥。

TXIoTDeviceEngine.DeviceInfo deviceInfo = new TXIoTDeviceEngine.DeviceInfo();deviceInfo.productId = "PRODUCT_ID";deviceInfo.deviceId = "DEVICE_NAME"; deviceInfo.deviceSecret = "DEVICE_SECRET";ioTDeviceEngine.login(deviceInfo, new TXIoTCallback() { @Override public void onSuccess() { //登录成功 } @Override public void onError(int code, String desc) { //登录失败 }});

七、常见问题

现象 排查建议
login 长时间无回调 / 超时 检查设备三元组是否正确、网络是否可达、本机系统时间是否准确。

八、联系我们

如果你在接入或使用过程中有任何疑问或者建议,欢迎 联系我们 提交反馈。

赞 (0)
上一篇 4天前
下一篇 4天前