更新时间:2024-07-03 06:34:05下载pdf
本教程旨在讲解 App 基础功能,让您快速上手出行应用开发流程,包含以下功能:
您可以单击下方按钮下载 Sample,查看本教程中的示例代码。本次教程按功能模块进行分类,您可以快速找到对应的代码参考学习。
展示内容界面均是基于涂鸦出行 SDK 提供的接口进行开发而来。
在您开始本教程前,确保您已经:
在涂鸦开发者平台,注册账号并创建 App 应用,获取 SDK 的 AppKey
和 AppSecret
。更多信息,参考 准备工作。
由于出行 SDK 依赖于 智能生活 App SDK,您需要首先实现诸如创建账号、添加默认家庭的操作后,才能借助出行 SDK 实现出行相关功能。更多信息,参考 智能生活 App SDK 快速入门教程。
准备一个涂鸦赋能的出行智能产品,本教程以二轮车为例。关于如何获取涂鸦赋能的产品,可访问 涂鸦智选。
使用 CocoaPods,将智能生活 App SDK 和出行 SDK 集成到您的项目中。更多信息,参考 SDK 集成。
由涂鸦赋能的出行设备主要支持智能生活 App SDK 中蓝牙及 Cat.1 配网方式,具体根据设备通信协议进行选择。更多信息,参考 涂鸦 App 配网方式。
对于涂鸦赋能的设备,其指令功能主要依赖 DP(Data Point,设备功能标识)进行下发与上报。出行 SDK 基于 ThingSmartDevice
主类 DP 发送方法进行二次包装,让下发操作更为便捷,建议出行相关功能均使用以下接口进行 DP 操作。若对 DP 概念较为陌生,建议了解 设备控制 和 产品功能。
public interface IThingDevice {
/**
* Distributed according to the specified channel sequence
*
* @param dps
* @param orders
* @param callback
*/
void publishDps(String dps, String orders, IResultCallback callback);
}
具体调用
IThingDevice thingDevice = ThingHomeSdk.newDeviceInstance(deviceId)
thingDevice.publishDps(xx,xx,xx)
出行 SDK 提供感应解锁基础 API 能力,此示例主要讲解蓝牙无感解锁基础功能如何使用。关于无感解锁更多详细功能,参考 无感解锁。
核心接口
类 | 接口 | 描述 |
---|---|---|
IODBtInductiveUnlock | boolean isInductiveUnlockTurnOn(); | 获取无感解锁开关状态 |
IODBtInductiveUnlock | void turnOnInductiveUnlock(InductiveUnlockCallback callback); | 开启无感解锁 |
IODBtInductiveUnlock | void turnOffInductiveUnlock(IResultCallback callback); | 关闭无感解锁 |
开启无感解锁功能依赖蓝牙能力,项目中建议增加对手机蓝牙权限及设备蓝牙在线状态进行前置校验,并提示用户务必保证手机蓝牙功能开启。
无感解锁配对状态判断:
boolean isTurnOn = getInductiveUnlock().isInductiveUnlockTurnOn();
开启无感解锁:
getInductiveUnlock().turnOnInductiveUnlock(new InductiveUnlockCallback() {
@Override
public boolean interceptBluetoothPairing(String bluetoothName) {
// 拦截配对,部分手机配网方式不同,需要手动处理,具体参考文档
return super.interceptBluetoothPairing(bluetoothName);
}
@Override
public void onError(String code, String error) {
// 开启失败
}
@Override
public void onSuccess() {
// 开启成功
}
});
关闭无感解锁:
getInductiveUnlock().turnOffInductiveUnlock(new IResultCallback() {
@Override
public void onError(String code, String error) {
// 关闭失败
}
@Override
public void onSuccess() {
// 关闭成功
}
});
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈