當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 視頻教程 > Android開(kāi)發(fā)視頻教程 > Android開(kāi)發(fā)教程手把手教你開(kāi)發(fā)APP(第七講)
Android開(kāi)發(fā)教程手把手教你開(kāi)發(fā)APP(第七講)
時(shí)間:2018-09-20 來(lái)源:未知
不知不覺(jué)已到了本項(xiàng)目的第七集了,也是本項(xiàng)目的核心技術(shù)點(diǎn)—— Android藍(lán)牙設(shè)備訪問(wèn)。藍(lán)牙技術(shù)說(shuō)實(shí)在話還是有一定難度的,請(qǐng)各位學(xué)習(xí)者多看幾遍,我堅(jiān)信在老師的的正確的引導(dǎo)下,一定會(huì)收獲不少。會(huì)涉及到以下技術(shù)知識(shí)點(diǎn)。
1 藍(lán)牙技術(shù)介紹
老師會(huì)簡(jiǎn)單的介紹一下藍(lán)牙技術(shù)的歷史,和當(dāng)前的一些應(yīng)用。
2 Android藍(lán)牙應(yīng)用開(kāi)發(fā)接口分析
–搜索藍(lán)牙設(shè)備
–保存配對(duì)信息
–建立RFCOMM信道
–通過(guò)發(fā)現(xiàn)服務(wù)連接其它藍(lán)牙設(shè)備
–通過(guò)Bluetooth Socket發(fā)送數(shù)據(jù)
–管理連接
3 Android藍(lán)牙應(yīng)用開(kāi)發(fā)實(shí)現(xiàn)細(xì)節(jié)
藍(lán)牙應(yīng)用開(kāi)發(fā)過(guò)程(實(shí)現(xiàn)細(xì)節(jié))
–通過(guò)BluetoothAdapter.getDefaultAdapter()獲得BluetoothAdapter
–通過(guò)發(fā)送BluetoothAdapter.ACTION_REQUEST_ENABLE隱式Intent或BluetoothAdapter.enable()來(lái)開(kāi)啟藍(lán)牙設(shè)備
注:如果使用隱式Intent可以通過(guò)startActivityForResult()來(lái)處理藍(lán)牙設(shè)備打開(kāi)后的操作,如果使用BluetoothAdapter.enable(),則需要注冊(cè)接收器來(lái)處理
–通過(guò)BluetoothAdapter.startDiscovery()來(lái)開(kāi)啟搜索設(shè)備
通過(guò)注冊(cè)接收器來(lái)處理搜索到的設(shè)備
–通過(guò)BluetoothAdapter.listenUsingRfcommWithServiceRecord()創(chuàng)建服務(wù)端BluetoothServerSocket,并通過(guò)其accept()方法阻塞等待Client連接
accept()會(huì)阻塞當(dāng)前線程,所以不要在UI線程中進(jìn)行accept
–通過(guò)BluetoothDevice.createRfcommSocketToServiceRecord() 得到客戶端BluetoothSocket,并通過(guò)其connect()方法連接遠(yuǎn)程設(shè)備
–服務(wù)端和客戶端分別通過(guò)getInputStream()和getOutStream()取得輸入輸出字節(jié)流,然后進(jìn)行讀寫操作
字節(jié)流操作在獨(dú)立線程中進(jìn)行操作
4 藍(lán)牙聊天功能設(shè)計(jì)與實(shí)現(xiàn)(圖示以及代碼演練)

