日志下载管理类
class ILogManager
描述 日志下载管理类
method configLogLocalPath
fun configLogLocalPath(path: String)
描述: 设置日志保存路径
输入参数:
path: 日志保存目录
输出参数: 无
method queryLogInfoList
fun queryLogInfoList(
sn: String,
deviceType: DeviceLogTypeEnum,
callback: CommonCallbacks.CompletionCallbackWithParam<DeviceSysLog?>
)
描述: 查询设备日志
输入参数:
sn: 设备SN
deviceType: 设备类型,参考:DeviceLogTypeEnum
callback:查询回调, 参考:DeviceSysLog。
输出参数: 无
method queryLogRealTimeInfoList
fun queryLogRealTimeInfoList(callback: CommonCallbacks.CompletionCallbackWithParam<DeviceSysLog?>)
描述: 查询飞机实时日志
输入参数:
callback:查询回调, 参考:DeviceSysLog。
输出参数: 无
method downloadPowerLog
fun downloadPowerLog(
powerLogs: List<DeviceSysOncePowerLog>,
callback: CommonCallbacks.DownLoadCallbackCompletionWithProgressAndFile<Double, DeviceSysLogModule>
)
描述: 按上电记录下载日志。
输入参数:
powerLogs:上电记录列表 参考:DeviceSysOncePowerLog
callback:查询回调 参考:DeviceSysLogModule
注:每完成一个DeviceSysLogModule,就会会通过 onProgressFileUpdate 通知
输出参数: 无
method downloadModuleLog
fun downloadModuleLog(
moduleLogs: List<DeviceSysLogModule>,
callback: CommonCallbacks.DownLoadCallbackCompletionWithProgressAndFile<Double, DeviceSysLogModule>
)
描述: 按模块下载日志
输入参数:
moduleLogs:设备模块列表(支持不同上电记录的模块放在一起下载),参考:DeviceSysLogModule
callback:查询回调
注:每完成一个DeviceSysLogModule,就会会通过 onProgressFileUpdate 通知
输出参数: 无
method deleteLog
fun deleteLog(powerLog: DeviceSysOncePowerLog, callback: CommonCallbacks.CompletionCallback)
描述: 删除上电记录日志
输入参数:
powerLog:上电记录日志,参考DeviceSysOncePowerLog
callback:查询回调
输出参数: 无
method deleteLog
fun deleteLog(moduleLog: DeviceSysLogModule, callback: CommonCallbacks.CompletionCallback)
描述: 删除模块日志
输入参数:
moduleLog:模块日志,参考DeviceSysLogModule
callback:查询回调
输出参数: 无
method canceldownload
fun canceldownload()
描述: 取消下载日志
输入参数: 无
输出参数: 无
DeviceLogTypeEnum
描述 设备类型枚举
enum class DeviceLogTypeEnum(var value: String) {
/** 未知 */
UNKOWN("Unkown"),
/** 遥控器 */
RC("RC"),
/** 无人机 */
DRONE("UAV"),
/** App */
APP("APP"),
/** 机巢 */
NEST("NEST");
}
DeviceSysLog
描述 日志信息
data class DeviceSysLog(
var type: DeviceLogTypeEnum, //日志类型
var sn: String, //设备SN
var powerLogList: List<DeviceSysOncePowerLog>, //上电记录列表
val deviceType: String = "" //设备类型
)
DeviceSysOncePowerLog
描述 上电日志信息
data class DeviceSysOncePowerLog(
var type: DeviceLogTypeEnum, //日志类型
var sn: String, //设备SN
var index: Int, //上电记录次序
var time: Long, //上电时间戳
var moduleList: List<DeviceSysLogModule> //设备模块日志列表
)
DeviceSysLogModule
描述 设备具体模块的日志信息
data class DeviceSysLogModule(
var mode: DeviceLogTypeEnum, //设备类型
var sn: String, //设备SN
var index: Int, //上电记录次序
var type: DeviceLogEnum, //日志类型
var time: Long, //上电时间戳
var size: Int, //模块日志大小,注:执行下载操作后才有值
var downPath: String = "", //日志文件下载地址,用户不用关心
var name: String = "", //日志名
var localPath: String = "" //日志下载后的地址,注:执行下载操作后才有值
)
DeviceLogEnum
描述 日志类型
enum class DeviceLogEnum(var value: String, val type: Int) {
/** unknown */
UNKOWN("Unkown", 0),
/**
* Rc Transmission
*/
RCTRANSMISSION("RcTransmission", 1),
/**
* Air Transmission
*/
AIRTRANSMISSION("AirTransmission", 2),
/**
* Air Skylink
*/
AIRSKYLINK("AirSkylink", 3),
/**
* Air Vision
*/
AIRVISION("AirVision", 4),
/**
* Rc Android
*/
RCANDROID("RcAndroid", 5),
/**
* Air Camera
*/
AIRCAMERA("AirCamera", 6),
/**
* NestAndroid
*/
NESTANDROID("NestAndroid", 7),
/**
* app
*/
APP("App", 8),
/**
* Only if the plane goes missing
*/
REALTIME("RealTime", 9),
/**
* Only the power-on record is available, but no module log is available
*/
POWERON("PowerON", 10);
}