国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Android Unity串接Bluetooth開發(fā)

這篇具有很好參考價值的文章主要介紹了Android Unity串接Bluetooth開發(fā)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

之前在和Unity對接藍(lán)牙開發(fā)(和theme,brightness后面發(fā)博客進(jìn)行講解),現(xiàn)在將這一塊梳理下。目前我這邊的流程是android端做接口,然后unity調(diào)用android的接口進(jìn)行下面一些操作,此外還有android主動調(diào)用unity的情況。
藍(lán)牙主要分五大塊

1.開啟(關(guān)閉)藍(lán)牙
2.獲取設(shè)備列表(廣播)
3.連接(廣播)
4.斷開(廣播)

下面一個個講解。
1.開啟藍(lán)牙
BluetoothAdapter…enable()進(jìn)行開啟
disable()進(jìn)行關(guān)閉

2.獲取設(shè)備列表(廣播)
進(jìn)入首頁開啟開關(guān)后,Unity會調(diào)用android的一個接口來開啟獲取設(shè)備列表(在我那個工程定義為startScan),然后會注冊一個廣播

        intentFilter.addAction("android.bluetooth.device.action.FOUND");
        intentFilter.addAction("android.bluetooth.adapter.action.DISCOVERY_FINISHED");

通過以上兩個action來接收不斷增加的附近藍(lán)牙,隨后在onReceive進(jìn)行判斷,將NativeDevice信息傳給Unity,Unity根據(jù)此結(jié)構(gòu)將藍(lán)牙列表顯示出來。

3.連接(廣播)
3.1.判斷藍(lán)牙狀態(tài)是否開啟
3.2.構(gòu)建Receiver監(jiān)聽配對請求和連接狀態(tài)

        intentFilter.addAction("android.bluetooth.device.action.BOND_STATE_CHANGED");
        intentFilter.addAction("android.bluetooth.device.action.PAIRING_REQUEST");

3.3.根據(jù)綁定狀態(tài)(android.bluetooth.device.extra.BOND_STATE)的state去回調(diào)相應(yīng)的方法,比如onPairSuccess對應(yīng)state = 12 ,onPairFail對應(yīng)state = 10,另外由于我這邊需要屏蔽系統(tǒng)配對彈窗,由Unity顯示彈窗,所以接收到android.bluetooth.device.action.PAIRING_REQUEST這個情況下,我們需要abortBroadcast從而能中斷系統(tǒng)彈出配對框,接著回調(diào)給Unity,將配對碼傳過去顯示。(配對完之后就會根據(jù)state 為12 或者 10 或者其他,進(jìn)行調(diào)用不同的接口)
3.4.通過一開始初始化的mAdapter.getRemoteDevice,傳入NativeDevice中存在的address來構(gòu)建BluetoothDevice對象
3.5.再用mBluetoothHeadsetClient,mBluetoothPBAPClient,mBluetoothA2DPClient,mBluetoothMAPClient去建立連接(這四個對象都需要在init里進(jìn)行初始化),這樣就建立了連接

4.斷開(廣播)
和3過程類似文章來源地址http://www.zghlxwxcb.cn/news/detail-478356.html

到了這里,關(guān)于Android Unity串接Bluetooth開發(fā)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Android Bluetooth | 藍(lán)牙配對源碼分析

    Android Bluetooth | 藍(lán)牙配對源碼分析

    好厚米們,我又來了! 這次分享的是 藍(lán)牙設(shè)備執(zhí)行配對動作時Android源碼的執(zhí)行流程。 下面先來說下, 應(yīng)用層是如何發(fā)起藍(lán)牙配對的: ( ps:大多數(shù)業(yè)務(wù)邏輯,都是掃描到可用設(shè)備后,點(diǎn)擊可用設(shè)備 - 發(fā)起配對。) 這里我直接略過點(diǎn)擊可用設(shè)備的步驟哈,掃描到第一個可用

    2024年02月06日
    瀏覽(17)
  • 深入了解Android藍(lán)牙Bluetooth【基礎(chǔ)+進(jìn)階】

    也可以說是藍(lán)牙技術(shù)。所謂藍(lán)牙(Bluetooth)技術(shù),實(shí)際上是一種短距離無線電技術(shù),是由愛立信公司公司發(fā)明的。利用“藍(lán)牙”技術(shù),能夠有效地簡化掌上電腦、筆記本電腦和移動電話手機(jī)等移動通信終端設(shè)備之間的通信,也能夠成功地簡化以上這些設(shè)備與因特網(wǎng)Internet之間的通

    2024年02月05日
    瀏覽(31)
  • Android Bluetooth(一)——藍(lán)牙的開啟和搜索

    Android Bluetooth(一)——藍(lán)牙的開啟和搜索

    Android 平臺包含藍(lán)牙網(wǎng)絡(luò)堆棧支持,此支持能讓設(shè)備以無線方式與其他藍(lán)牙設(shè)備交換數(shù)據(jù)。應(yīng)用框架提供通過 Android Bluetooth API 訪問藍(lán)牙功能的權(quán)限。這些 API 允許應(yīng)用以無線方式連接到其他藍(lán)牙設(shè)備,從而實(shí)現(xiàn)點(diǎn)到點(diǎn)和多點(diǎn)無線功能。 Android 應(yīng)用可通過 Bluetooth API 執(zhí)行以下操

    2024年01月16日
    瀏覽(19)
  • 【Bluetooth藍(lán)牙開發(fā)】一、開篇詞 | 打造全網(wǎng)最詳細(xì)的Bluetooth開發(fā)教程

    【Bluetooth藍(lán)牙開發(fā)】一、開篇詞 | 打造全網(wǎng)最詳細(xì)的Bluetooth開發(fā)教程

    我的圈子: 高級工程師聚集地 我是董哥,高級嵌入式軟件開發(fā)工程師,從事嵌入式Linux驅(qū)動開發(fā)和系統(tǒng)開發(fā),曾就職于世界500強(qiáng)企業(yè)! 創(chuàng)作理念:專注分享高質(zhì)量嵌入式文章,讓大家讀有所得! 大家好,我是董哥! 隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展, WiFi 、藍(lán)牙成了物聯(lián)網(wǎng)通信主

    2024年01月18日
    瀏覽(21)
  • Android Studio 簡要實(shí)現(xiàn)藍(lán)牙(Bluetooth)通信(附加作業(yè))

    Android Studio 簡要實(shí)現(xiàn)藍(lán)牙(Bluetooth)通信(附加作業(yè))

    1.兩臺設(shè)備可以通過藍(lán)牙進(jìn)行通信 2.模擬Client 和Server端實(shí)現(xiàn)簡單的通信。 如果想讓應(yīng)用啟動設(shè)備發(fā)現(xiàn)或操縱藍(lán)牙設(shè)置,則除了 BLUETOOTH 權(quán)限以外,還必須聲明 BLUETOOTH_ADMIN 權(quán)限。大多數(shù)應(yīng)用只是需利用此權(quán)限發(fā)現(xiàn)本地藍(lán)牙設(shè)備。除非應(yīng)用是根據(jù)用戶請求修改藍(lán)牙設(shè)置的“超級

    2024年02月03日
    瀏覽(19)
  • Android藍(lán)牙使能流程圖(Android Bluetooth enable) -- java & jni層

    Android藍(lán)牙使能流程圖(Android Bluetooth enable) -- java & jni層

    在介紹Android enable流程之前,我們首先來看下Android的流程圖 以上圖示是android8以上的,主要跟Android8之前的架構(gòu)在于Bluetooth stack跟vendor層之間增加一層HIDL,主要是抽象硬件層的作用 OK,回歸主題,我們來看下Android的enable流程,首先上一張架構(gòu)圖 另外聲明下:我們做了一些列

    2024年02月09日
    瀏覽(21)
  • Bluetooth 開發(fā)科普

    Bluetooth 開發(fā)科普

    Controller運(yùn)行在藍(lán)牙芯片上,host運(yùn)行在主控上,兩芯片通過硬件通信接口(uart或usb),進(jìn)行通信連接(HCI)。 實(shí)際使用中有不同場景,根據(jù)場景需求,SIG定義了不同的規(guī)范(Profile),對于Controller只關(guān)心數(shù)據(jù)收發(fā),不用用戶場景,所以有了host端的L2CAP規(guī)范,屏蔽上層不同用戶

    2024年02月13日
    瀏覽(20)
  • RK3288 Android11 RTL8723DS WiFi 和 藍(lán)牙Bluetooth 適配

    RK3288 Android11 RTL8723DS WiFi 和 藍(lán)牙Bluetooth 適配

    ??瑞芯微RK系列對“REALTEK瑞昱公司”的wifi、藍(lán)牙雙模的模組都有內(nèi)置適配的,因此HAL層、Framework層、協(xié)議棧及庫文件都不需要移植適配,只需修改設(shè)備樹和一些配置文件即可。 補(bǔ)充: RTL8723DS時鐘輸入源講解 ??RTL8723DS模組的第24號引腳是模組的時鐘輸入源,需要給此提供

    2024年02月07日
    瀏覽(19)
  • MTK Android13 user版本進(jìn)入engineermode的Bluetooth測試項時閃退

    平臺:MT6771 android13 問題描述:進(jìn)入到工模,點(diǎn)擊進(jìn)入Bluetooth測試項直接閃退 Log如下: 從日志咱們可以看到: 很明顯這個服務(wù)沒有注冊,找到編譯規(guī)則s0_vnd/device/mediatek/vendor/common/device.mk,可以看到以下: 可以看到只有在編譯eng,userdebug版本時會編譯em_hidl,那在編譯規(guī)則中加

    2024年02月05日
    瀏覽(25)
  • 【Bluetooth藍(lán)牙開發(fā)】九、BLE協(xié)議之GATT

    個人主頁:董哥聊技術(shù) 我是董哥,嵌入式領(lǐng)域新星創(chuàng)作者 創(chuàng)作理念:專注分享高質(zhì)量嵌入式文章,讓大家讀有所得! ? 【所有文章匯總】 ?

    2024年01月22日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包