IT之家 11 月 22 日消息,在開發(fā) HarmonyOS Connect 生態(tài)產品時,你是否也有設備功能調測方面的疑問?現(xiàn)在華為鴻蒙開發(fā)者官方為大家?guī)砹嗽O備功能調測相關的常見問題答疑,讓你快速獲得解決方案。

一、設備連接
Q1: 手機碰一碰 NFC 標簽,彈框提示“系統(tǒng)錯誤”,如何處理?
問題現(xiàn)象
手機碰一碰待連接設備,彈框提示“系統(tǒng)錯誤”,更換 Wi-Fi 后報錯仍無法清除。
可能原因
手機時間與網絡時間不一致。
設備發(fā)起請求時,會將手機時間與設備激活碼等信息傳到云端。云端會對手機時間與網絡時間的一致性進行校驗,以確保請求的合法性。如果兩者的時間差大于一小時,則請求無效。
A: 解決措施
將手機的時間設置為“自動設置”,使手機與當前網絡上的時間同步。以華為手機為例:
1.進入手機“設置”。
2.選擇“系統(tǒng)和更新> 日期和時間”。
3.開啟“自動設置”開關。
Q2: 手機碰一碰 NFC 標簽,提示“未獲取到應用信息”。
問題現(xiàn)象
手機碰一碰 NFC 標簽,提示“未獲取到應用信息”。
可能原因
原因一:服務意圖配置的 HarmonyOS 標簽的產品型號不是當前的 ProductID。
原因二:NFC 標簽寫入的碼流中的 ProductID 有誤。
A: 解決措施
1.確認服務意圖配置的 HarmonyOS 標簽的產品型號是否為當前的 ProductID。
登錄華為快服務智慧平臺。
在服務列表中找到對應的原子化服務,單擊“編輯”。
選擇“配置> HarmonyOS 標簽”,確認設備標簽中的“產品型號”是否正確。如果不正確,需要重新配置。
2.確認 NFC 標簽碼流的 ProductID 字段是否正確。如果不正確,需要重新寫入。
Q3: 碰一碰 NFC 標簽無法拉起 FA,NFC 服務提示“發(fā)現(xiàn) NFC 標簽,點擊啟動應用”。
問題現(xiàn)象
手機碰一碰待連接設備,NFC 服務彈出提示“發(fā)現(xiàn) NFC 標簽,點擊啟動應用”,無法正常拉起原子化服務。

圖 1 原子化服務無法正常拉起
可能原因
NFC 標簽碼流錄入錯誤,導致手機系統(tǒng)無法正確解析 NFC 碼流。
A: 解決措施
1.在 Device Partner 平臺上申請 NFC 標簽碼流,并根據(jù)實際設備信息生成可用的標簽碼流。
2.將碼流重新寫入 NFC 標簽,并重試碰一碰拉起原子化服務。
Q4: 設備處于開機狀態(tài)且手機網絡正常,但智慧生活 App 上設備卡片顯示離線狀態(tài)。
問題現(xiàn)象
設備處于開機狀態(tài)且手機網絡正常,但智慧生活 App 上設備卡片顯示離線狀態(tài),且串口工具不停重復打印設備側日志“+NOTICE:SCANFINISH/+NOTICE:DISCONNECTED”。
可能原因
設備已連接的熱點的 SSID 或密碼發(fā)生變更。
A: 解決措施
方式一:將熱點 SSID 和密碼改回,模組即可重新連接熱點,恢復正常。
方式二:將模組重置,重新給模組配網。
Q5: 模組在 STA 模式下連接路由器熱點,路由器斷電重啟或模組離開熱點范圍再返回后無法重連熱點。
問題現(xiàn)象
1.模組短距測試中,執(zhí)行如下命令設置模組打開 STA 模式。
AT+STARTSTA
2.執(zhí)行如下命令,掃描模組周圍熱點。
AT+SCAN
3.執(zhí)行如下命令,查看掃描結果。
AT+SCANRESULT
4.參考執(zhí)行如下命令,連接熱點。命令中的四個值分別代表 SSID、MAC、熱點類型以及密碼,請根據(jù)實際情況修改。
AT+CONN="hisilicon",1a:01:f1:c9:7c:92,3,"123456789"
5.執(zhí)行如下命令,打開 DHCP。
AT+DHCP=wlan0,1
6.路由器斷電重啟或者模組離開熱點范圍再返回,此時發(fā)現(xiàn)模組無法重新連接該熱點。
可能原因
模組未配置重連策略。
A: 解決措施
參考如下命令執(zhí)行重連策略,命令中的參數(shù)需要根據(jù)實際情況修改,具體取值參見芯片手冊。
AT+RECONN=1,10,3600,5
二、設備配網
Q6: 手機首次碰一碰 NFC 標簽,拉起的是非配網 FA 頁面。
問題現(xiàn)象
手機首次碰一碰 NFC 標簽,拉起的是非配網 FA 頁面(比如控制 FA 頁面)。
可能原因
原因一:服務意圖配置的 Ability 名稱不是配網 FA 頁面的 Ability 名稱。
原因二:原子化服務包中其他模塊的 Ability 與配網 FA 的 Ability 重名,導致拉起的 FA 頁面有誤。
A: 解決措施
1. 確認服務意圖配置的“服務名”是否為配網 FA 的 Ability 名稱。
登錄華為快服務智慧平臺。
在服務列表中找到對應的原子化服務,單擊“編輯”。
選擇“配置> FA 信息”,確認配置方式中的“服務名”是否為配網 FA 的 Ability 名稱。如果不正確,需要重新配置。
2. 確認其他模塊 Ability 名稱是否與配網 FA 的 Ability 重名。
在 DevEco Studio 項目下,逐個排查其他模塊中的“src/main/config.json”文件。
在 json 文件中,找到“module/mainAbility”配置項,檢查是否與配網 FA 的 Ability 同名。
找到并選中重名的 Ability,單擊右鍵,選擇“Refactor> Rename”,重命名文件。
Q7: 碰一碰拉起配網 FA,在 SoftAP 配網進度達 30% 時失敗,顯示“當前網絡不可用”。
問題現(xiàn)象
碰一碰拉起配網 FA,在進行 SoftAP 配網時配網進度在 30% 失敗,提示“當前網絡不可用”。
可能原因
原因一:模組側因長時間不啟用進入待機狀態(tài),關閉了配網所需的設備 AP。
原因二:NFC 標簽碼流中 0406 字段后 6 字節(jié)寫入的數(shù)據(jù)與設備開啟的 AP MAC 地址不一致。
A: 解決措施
1.確保設備 AP 無線網絡名稱正確。
登錄華為智能硬件合作伙伴平臺,單擊右上角的“管理中心”。
單擊對應的產品,進入“集成開發(fā)”頁面。在配網設置中查看并記錄“無線網絡名稱”(SSID) 的取值。
在手機中打開“設置”,選擇“WLAN > 可用 WLAN”,確保該列表中存在與記錄的 SSID 相同的設備 AP。
若無相同 SSID 的設備 AP,請嘗試重啟設備。
若產品 ID 一致但 SSID 名稱不一致,請重新燒錄模組使 SSID 與記錄的一致。
2.修改標簽碼流 MAC 字段并重新燒錄 NFC。
Q8: 碰一碰拉起配網 FA,無法進行 NAN 配網。
問題現(xiàn)象
碰一碰拉起配網 FA,無法進行 NAN 配網,F(xiàn)A 日志中打印碰一碰 Intent 參數(shù) nanSessionId 字段的值為“NAN_DEVICE_NOT_FOUND”。
可能原因
用于配網的模組不支持 NAN 配網。
手機與模組之間距離大于 30cm。
上一次碰一碰拉起配網 FA 進行 NAN 配網未完成,模組的 NAN 通道將鎖定一段時間。
A: 解決措施
1.咨詢產品對應模組廠商,確認模組是否支持 NAN 配網。
2.將手機靠近至模組 30cm 半徑以內后重新碰一碰配網。
3.等待模組日志打印以下信息時,即可進行 NAN 配網 (x 代表任意數(shù)字)。
Send: msgType[x] msgId[x] msgLen[x]
若模組日志打印顯示以下信息,則表示當前模組只能進行 SoftAP 配網,請重啟模組或重新燒錄模組。
wait STA join AP
Q9: 設備配網過程中,配網 FA 獲取不到 Wi-Fi 列表。
問題現(xiàn)象
設備配網過程中,配網 FA 獲取不到 Wi-Fi 列表。
可能原因
原因一:配網模塊中沒有注冊“NetConfigAbility”。
原因二:不止一個配網模塊注冊了“NetConfigAbility”。
A: 解決措施
1.確認配網模塊是否有注冊“NetConfigAbility”。
在配網模塊下,找到該模塊下的“MainAbility”,雙擊打開。
檢查該文件的 onStart 方法中是否含有 NetConfigAbility.register () 的代碼。
2.確認是否存在多個注冊了“NetConfigAbility”的配網模塊。
逐個排查各個配網模塊“MainAbility”的 onStart 方法是否都注冊了“NetConfigAbility”。
只在一個配網模塊中保留“NetConfigAbility”的注冊,刪除其他配網模塊“NetConfigAbility”的注冊代碼。
Q10: 設備配網過程中,使用 SoftAP 的方式未掃描到設備。
問題現(xiàn)象
設備配網過程中,使用 SoftAP 的方式未掃描到設備。

圖 2 未掃描到設備
可能原因
原因一:Wi-Fi 設備未開啟。
原因二:Wi-Fi 設備已開啟,getWifiList 接口讀取的是 Wi-Fi 緩存信息。
原因三:NFC 標簽碼流的 MAC 地址與 Wi-Fi 設備的 MAC 地址不一致。
A: 解決措施
1.確認 Wi-Fi 設備已開啟。
2.間隔一段時間(約 2min)后,重新掃描設備。如果多次掃描仍提示配網失敗,重試重置設備。
3.確認 NFC 標簽碼流的 MAC 地址是否與 Wi-Fi 設備的 MAC 地址一致。如果不一致,則需要重新燒錄正確的 NFC 碼流信息。
Q11: 設備配網失敗且設備側日志顯示“Parse symbol authentication response message failed”。
問題現(xiàn)象
設備配網的過程中,串口工具打印的設備側日志顯示“Parse symbol authentication response message failed”,配網流程結束后,智慧生活 App 顯示設備配網失敗。
可能原因
原因一:hal_sys_param.c 文件中的產品信息未配置正確。
原因二:設備激活碼與產品信息不匹配。
原因三:Device Partner 平臺管理中心上添加的調測設備 SN 與 HalGetSearial 接口返回的 value 值不一致。
A: 解決措施
1.檢查 hal_sys_param.c 文件中企業(yè)英文名、產品型號、品牌英文名信息是否配置正確,確保和 Device Partner 平臺管理中心上的產品信息保持一致。
2.在 Device Partner 平臺管理中心上重新申請設備激活碼,并寫入設備。
3.檢查 hal_sys_param.c 文件中 HalGetSearial 接口的實現(xiàn),可通過打印 value 方式查看其返回值是否和 Device Partner 平臺管理中心上配置的調測設備 SN 是否一致(注意大小寫也需要保持一致)。
三、其他問題
Q12: 如何獲取 HinkSvc 日志?
A: 1.打開手機的“文件管理”應用,進入“瀏覽”頁面。
2.在“位置”列表中,選擇“我的手機”。
3.進入“Android> data > com.huawei.hilink.framework > files > Log > com.huawei.hilink.framework”文件夾。此文件夾中的文件即為 HinkSvc 日志。
Q13: 如何抓取 HarmonyOS 手機藍牙 HCI 日志?
A: 1.確認手機已進入開發(fā)者模式并開啟“USB 調試”功能。
在手機中打開“設置”。
選擇“關于手機”,查找版本號。
快速點擊“版本號”多次,直到提示開發(fā)者模式已打開,返回上一層。
選擇“系統(tǒng)和更新> 開發(fā)人員選項”,并開啟“USB 調試”。
2.在電腦中運行 cmd 命令。
3.在命令行中輸入如下命令,導出的文件即為手機藍牙 HCI 日志。
hdc file recv /data/log/bt ./
Q14: 在帳號登錄 FA 界面單擊“華為帳號快捷登錄”,沒有響應。
問題現(xiàn)象
在帳號登錄 FA 界面單擊“華為帳號快捷登錄”,沒有響應。
可能原因
原因一:沒有在 AppGalley Connect 網站添加應用指紋證書。
原因二:“config.json”文件中“metaData”下“customizeData”沒有配置 appid 或者 appid 配置錯誤。
A: 解決措施
1.在 AppGalley Connect 網站添加應用指紋證書。
2.在“config.json”文件中配置 appid 即為 Client ID。
"metaData": {
"customizeData": [
{
"name": "com.huawei.hms.client.appid",
"value": "*********"
}
]
},更多 HarmonyOS Connect 文檔查看:點此鏈接。
廣告聲明:文內含有的對外跳轉鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結果僅供參考,IT之家所有文章均包含本聲明。