{IDO协议库缓存接口说明}

1.功能概述

提供查询log、alexa、设备缓存根目录,导出日志,加载设备功能表和连接过的设备列表信息的能力。

2.接口能力

1.获取log根路径:

1.1 功能概括:

无。

1.2 API ID:

Future<String> logPath() async {
  final pathSDK = await LocalStorage.pathSDKStatic();
  return Future.value('$pathSDK/logs');
}

1.3 API参数说明:

@return:log根路径,字符串。

2.获取alexa根路径:

2.1 功能概括:

无。

2.2 API ID:

Future<String> alexaPath() async {
  final pathSDK = await LocalStorage.pathSDKStatic();
  return Future.value('$pathSDK/alexa');
}

2.3 API参数说明:

@return:alexa根路径,字符串。

3.获取alexa测试路径:

3.1 功能概括:

无。

3.2 API ID:

Future<String> alexaTestPath() async {
  final dirDocument = await getApplicationDocumentsDirectory();
  return Future.value('${dirDocument.path}/alexa_test_pkg');
}

3.3 API参数说明:

@return:alexa测试路径,字符串。

4.获取当前设备缓存根路径:

4.1 功能概括:

无。

4.2 API ID:

Future<String?> currentDevicePath() async {
  return storage?.pathRoot();
}

4.3 API参数说明:

@return:当前设备缓存根路径,字符串。

5.导出日志:

5.1 功能概括:

无。

5.2 API ID:

Future<String?> exportLog() async {
  final pathSDK = await LocalStorage.pathSDKStatic();
  return await compute(_doZip, pathSDK);
}

5.3 API参数说明:

@return: 压缩后日志zip文件绝对路径,字符串。

6.加载指定设备功能表:

6.1 功能概括:

无。

6.2 API ID:

Future<FunctionTableModel?> loadFuncTable(
      {required String macAddress}) async {
    final macAddr = macAddress.replaceAll(':', '').toUpperCase();
    return storage?.loadFunctionTableWith(macAddress: macAddr);
  }

6.3 API参数说明:

@param:macAddress 设备MAC地址,字符串。

@return: 成功返回json格式字符串,失败返回null。

7.加载指定设备功能表:////TODO

7.1 功能概括:

无。

7.2 API ID:

Future<FunctionTableModel?> loadFuncTable(
      {required String macAddress}) async {
    final macAddr = macAddress.replaceAll(':', '').toUpperCase();
    return storage?.loadFunctionTableWith(macAddress: macAddr);
  }

7.3 API参数说明:

@param:macAddress 设备MAC地址,字符串。

@return: 成功返回json格式字符串,失败返回null。////TODO

8.加载指定设备功能表:////TODO

8.1 功能概括:

无。

8.2 API ID:

Future<BaseFunctionTable?> loadFuncTableByDisk(
  {required String macAddress}) async {
  final macAddr = macAddress.replaceAll(':', '').toUpperCase();
  final ft = await storage?.loadFunctionTableWith(macAddress: macAddr);
  logger?.d('loadFuncTableByDisk rs:$ft');
  if (ft == null) return null;
  return BaseFunctionTable()..initFunTableModel(ft);
}

8.3 API参数说明:

@param:macAddress 设备MAC地址,字符串。

@return: 。

9.加载指定设备功能表:////TODO

9.1 功能概括:

无。

9.2 API ID:

Future<String?> loadFuncTableJsonByDisk(
      {required String macAddress}) async {
    final macAddr = macAddress.replaceAll(':', '').toUpperCase();
    final ft = await storage?.loadFunctionTableWith(macAddress: macAddr);
    logger?.d('loadFuncTableByDisk rs:$ft');
    if (ft == null) return null;
    return jsonEncode(ft.toJson());
  }

9.3 API参数说明:

@param:macAddress 设备MAC地址,字符串。

@return: 。

10.加载指定设备绑定状态:////TODO

10.1 功能概括:

无。

10.2 API ID:

Future<bool> loadBindStatus({required String macAddress}) async {
    final macAddr = macAddress.replaceAll(':', '').toUpperCase();
    final rs = await storage?.loadBindStatus(macAddress: macAddr);
    return Future(() => rs ?? false);
  }

10.3 API参数说明:

@param:macAddress 设备MAC地址,字符串。

@return: 输入MAC地址对应的绑定状态,bool类型,true:绑定,false:非绑定。

11.查询最后一次连接设备的信息:////TODO

11.1 功能概括:

提供查询最后一次连接的设备的设备信息,包括ota模式,设备名称,uuid(IOS),bt/mac地址,最后更新时间。

11.2 API ID:

Future<DeviceInfoExtModel?> lastConnectDevice() async {
    final list = await storage?.loadDeviceExtListByDisk();
    return Future(() => list?.first);
  }

11.3 API参数说明:

@return: 最后一次连接设备的设备信息,包括:////TODO

final String macAddress;  //mac地址
String? macAddressFull;   //?
bool otaMode = false;     //ota模式?
String uuid;              //uuid(IOS)
String deviceName;        //设备名称
int updateTime;           //最后更新时间 单位毫秒
String? macAddressBt;     //bt地址

String formatTime(int millisecondsSince) {
  return DateTime.fromMicrosecondsSinceEpoch(millisecondsSince).toString();
}

12.查询连接过的设备列表:////TODO

12.1 功能概括:

提供查询连接过的设备列表的能力,包括设备的ota模式,设备名称,uuid(IOS),bt/mac地址,最后更新时间。

12.2 API ID:

Future<List<DeviceInfoExtModel>?> loadDeviceExtListByDisk(
      {bool sortDesc = true}) async {
    return storage?.loadDeviceExtListByDisk(sortDesc: sortDesc);
  }

12.3 API参数说明:

@return: 连接过的设备列表的设备信息,列表中的每个设备信息包括:////TODO

final String macAddress;  //mac地址
String? macAddressFull;   //?
bool otaMode = false;     //ota模式?
String uuid;              //uuid(IOS)
String deviceName;        //设备名称
int updateTime;           //最后更新时间 单位毫秒
String? macAddressBt;     //bt地址

String formatTime(int millisecondsSince) {
  return DateTime.fromMicrosecondsSinceEpoch(millisecondsSince).toString();
}
Copyright © 2023-2024 IDO. All rights reserved. all right reserved,powered by Gitbook修订时间: 2026-04-07 16:03:39

results matching ""

    No results matching ""