遇到的問題:
連線上藍芽模組後,能夠正常讀數,藍芽資料傳送速率為0.03s每個。大概在傳送了342個資料之後,突然接收不到資料了。
後來查詢了資料,顯示原來android中藍芽socket通訊連線時長大概為120s,如果超過這個時間沒有操作,就會斷開連線。但是我想了一下,客戶端一直在讀取資料流的呀,怎麼是沒有操作呢??
查了關於心跳包的內容,覺得好像有點麻煩。因為我之前的程式並沒有用到service。
解決方法:然後抱著試試看的態度,從客戶端每隔一段時間(只要小於120秒就好)向藍芽模組傳送不被解析的指令。結果就不會出現socket斷開的情況了。(也就是說為了保持通訊正常,不僅要接收資料,還要傳送資料)
大致像這樣:
if(frameshasread==framestoread)
catch (ioexception e)
}
還是很開心的。不過決定今後新建乙個工程的時候,改用service試試看,應該會條理清楚一點。
參考資料:
android簽名包安裝問題解決
安卓360加固後,簽名包有的手機安裝不了問題解決 1.使用360加固後,再使用jarsigner簽名打包 命令 jarsigner verbose keystore bar1 signedjar test signed.apk encrypted.apk bar1 2.部分手機安裝的時候,提示失敗,...
Android學習記錄及問題解決
1.android studio 3.2版沒有android device monitor的入口 2.照書學習 並做練習題。可以通過git管理多個分支,並用github託管。方法 1 android studio 中建工程,例如 beatbox 2 在主目錄中執行如下命令以建立本地git倉庫 git...
登入中的問題解決
判斷使用者名稱和密碼正確採取登入 public bool isvaliduser users ca paras 0 value ca.username paras 1 value ca.password 這裡如果是大於0的話 相當於用使用者名稱和密碼來查詢使用者表中的使用者id 並存在 如果不存在就...