阿里雲SDK上報版本最終是通過HAL_GetFirmwareVersion這個基礎API實現的,最後發現是該函數返回值一直爲0,也就是軟件版本號一直爲空字符串,而且無法寫入軟件版本號,現需要修改這個函數,而且添加寫入函數 HAL_SetFirmwareVersion .結果入下圖.
最後再添加 HAL_SetFirmwareVersion 函數的定義,便於後面主函數調用,
因爲iot_import_product.h這個文件是阿里雲套件文件,所以需要重新編譯生成 libiot_sdk.a, 最後在連接阿里雲物聯網平臺之前利用 HAL_SetFirmwareVersion 函數將軟件版本號寫入,就可以正確獲取上報了.因爲HAL是基本函數,所以需要用戶實現,阿里雲只是設計流程,所以需要用戶根據實際情況修改.這個軟件版本號上報主要是爲了阿里雲OTA 固件空中升級用的,沒有軟件版本號無法進行升級.