Closed jiaotilizi closed 5 years ago
是的,在IOT_MQTT_Destroy后没有退出程序而再次IOT_MQTT_Construct确实会导致qcloud_get_log_level返回错误,这是一个已知问题,会在下一个版本修复。临时方案是需要IOT_MQTT_Construct之后第一次调用qcloud_get_log_level时将sg_log_sub_ok置为false,可以在qcloud_get_log_level函数增加一个入口参数来控制。 有同样问题的还有IOT_SYSTEM_GET_TIME接口。其他的全局变量目前还没有发现会导致逻辑问题的。
v3.0.1已经解决该问题
设备启动后,执行一次IOT_MQTT_Construct和IOT_MQTT_Destroy后,再次执行IOT_MQTT_Construct会导致qcloud_get_log_level返回错误,定位时发现IOT_MQTT_Destroy动作未将sg_log_sub_ok复位,希望SDK开发人员帮忙确认是否有必要在Destroy Client后加一个复位动作,如果有必要,希望排查一下这种情况的其他全局变量(如:sg_client_token、sg_devinfo_initialized等)。