一、安裝虛擬串口軟體
虛擬串口軟體推薦 Virtual Serial Port Driver 官網 和 Virtual Serial Port Kit 官網 都可以免費試用15天,
這里以Virtual Serial Port Kit為例,打開安裝好的Virtual Serial Port Kit,點擊選單欄的新增圖示

然后選擇兩個埠點確定即可

1.1 測驗虛擬串口是否正常作業
為了測驗虛擬串口設備是否能正常作業,我們可以使用串口除錯助手進行測驗,這里以 友善串口除錯助手 為例
運行兩個除錯助手,埠選擇與上圖對應,其他配置需要一致,測驗資料的收發是否正常,

二、AndroidStudio 模擬器掛載串口
先說結論,不推薦使用AndroidStudio自帶的模擬器進行串口除錯,因為實際測驗中發現,當模擬器接收超過8位元組的資料后會卡死閃退...
一開始以為是代碼哪里寫的有問題,其實是谷歌官方的bug,
2.1 Android模擬器安裝
從Android5.0之后,模擬器就默認沒有root權限了,所以我們要安裝一個帶root權限的模擬器,在創建模擬器選擇鏡像的時候,選擇名稱中不帶Google APIs的即可

2.2 映射串口到模擬器
首先進入AndroidSDK下的tools目錄

Win + R 運行cmd 轉到AndroidSDK下的tools目錄,然后通過命令列方式啟動模擬器
.\emulator.exe -avd 模擬器名稱 -writable-system -qemu -serial 創建的虛擬串口設備埠
例如:.\emulator.exe -avd Nexus_10_API_30 -writable-system -qemu -serial COM4
可以將以下代碼復制到文本檔案中保存,并修改后綴名為.cmd,以后雙擊即可啟動
注意修改為自己電腦上的對應路徑和盤符!!!
注意修改為自己電腦上的對應路徑和盤符!!!
注意修改為自己電腦上的對應路徑和盤符!!!
D:
cd D:\Android\android-sdk\tools
.\emulator.exe -avd Nexus_10_API_30 -writable-system -qemu -serial COM4
沒有問題的話就會出現以下對話框,按自己的需求選擇

成功啟動后的模擬器

2.2 打開模擬器串口權限
映射成功后,打開串口可能會報SecurityException例外,這是因為沒有讀寫權限,安裝帶root的模擬器也是為了這一步,
這里以 /dev/ttyS0為例
執行以下命令
.\adb.exe root
.\adb.exe shell
setenforce 0
chmod 666 /dev/ttyS0

設定完成之后即可收發資料
三、Genymotion模擬器掛載串口
3.1 安裝Genymotion模擬器
Genymotion下載,選擇帶VirtualBox版本安裝,一路下一步即可完成安裝,
完成安裝后打開軟體,點擊+號圖示添加一個模擬器,默認設定即可

3.2 映射串口
打開Oracle VM VirtualBox 選中剛才創建的模擬器,點擊設定,如果已經啟動了模擬器,需要先關閉,
切換到串口設定,有4個埠 我們啟用第一個

埠編號:COM1~COM4 分別對應/dev/ttyS0 ~ /dev/ttyS3,如果在應用中操作的是ttyS0,這里的埠編號應該選擇COM1,
一定要對應,不然打開串口的時候還是會報SecurityException例外,
埠模式:選擇主機設備
路徑/地址 :輸入在虛擬串口軟體中設定的埠 ,比如COM1
點擊確定即可完成映射,如果遇到權限拒絕,參考2.2 臨時關閉防火墻 修改串口的可讀寫權限

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/549104.html
標籤:Android
上一篇:集成華為運動健康服務干貨總覽
下一篇:集成華為運動健康服務干貨總覽
