Android操作串口時,可讀不可寫,視美泰A20~A40問題

背景:

最近由於項目需要將先前視美泰A20的程序升級到A40上使用,原則上不應該有問題的,但發現切換過來的程序操作串口數據時只能讀不能寫。

原因分析:

對於可讀不可寫,說明波特率、校驗位等參數設置是正確的;可能出現在寫入時的權限或串口程序解析問題。通過在串口用示波器測試波形發現並未寫入,所以懷疑串口程序異常是不可能發生了,只能出現在節點權限上面。對比A20、A40節點權限發現:

對比不難發現,A20是root用戶組,而A40是system用戶組,對於熟悉Android的朋友來說不難解決此問題了。

解決辦法:

1. 在manifest中添加android:sharedUserId="android.uid.system"屬性;

2. 將程序使用A40的系統簽名,簽名後再安裝到A40主板上。

以上兩步操作完成後你會發現程序運行正常,問題得以解決。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章