原创 藍牙自動重連機制

扒一扒藍牙自動重連機制的實現原理 在日常使用藍牙的過程中,想必大家都發現了這樣一個現象:連接藍牙設備的手機在關閉再重新打開藍牙後,會自動連接上先前連接着的那個設備,同樣的場景對於安卓車機系統效果也是一致的。那這是怎麼實現的呢,本

原创 藍牙電話之PBAP-同步電話簿的幾點注意事項

藍牙電話之PBAP-同步電話簿的幾點注意事項 使用原生安卓同步完電話簿數據後,藍牙服務層會直接將從手機端同步到的數據寫入數據庫,輔以同步狀態的上報,這樣藍牙電話應用就知道何時觸發從數據庫中取出相應的聯繫人和通話記錄等數據。 然而

原创 安卓系統藍牙協議棧 bluedroid 的使能

安卓系統藍牙協議棧 bluedroid 使能流程分析 本文承接上篇文章《安卓中藍牙系統服務層的使能流程分析》,接續分析協議棧層相關的使能流程,所以藍牙協議棧bluedroid的使能始於JNI層enableNative()中調用協

原创 安卓系統藍牙服務com.android.bluetooth的使能

藍牙系統服務層的使能流程分析 藍牙服務層的使能基礎是其初始化完成,也就是AdapterService通過onBind()將AdapterServiceBinder上報給bind該服務的調用者。我們現在應該都知道在安卓系統中bin

原创 安卓系統中藍牙協議棧的初始化流程分析

藍牙協議棧初始化流程分析 熟悉安卓系統中藍牙基本架構的同學想必對藍牙協議棧不會陌生,還不瞭解的也不必擔心,出門左轉查看我另一篇文章《安卓系統中藍牙服務層的初始化流程分析》,那篇分析裏有一幅藍牙系統在安卓中的架構圖,想來對初識藍牙

原创 安卓系統中藍牙服務層的初始化流程分析

安卓系統中藍牙服務層的初始化流程分析 藍牙系統依賴於安卓,從上到下,層次分明。本篇文章我們就來簡單分析下藍牙服務層初始化的相關流程。 首先來了解下安卓系統中的藍牙模塊大致分爲以下幾部分: 對安卓系統啓動時序有大概瞭解的小夥伴想

原创 聊一聊藍牙名字和地址的來龍去脈

藍牙名字和地址 藍牙設備作爲一種短距離無線連接的載體,由於其體積小、操作方便等優點,在耳機、車載和電腦鍵鼠等應用方面被越來越多的消費者所青睞,漸漸走入大衆視野中。 作爲藍牙設備的使用者,我們的第一想法往往是這個藍牙設備的名字是什

原创 藍牙電話之PBAP同步電話簿協議分析

藍牙電話之PBAP-同步協議分析 在前一篇文章《藍牙電話之PBAP協議分析》中從整體上分析了PBAP協議的內容,本章我們着重分析協議中的精髓——同步電話簿。PBAP協議存在的目的就是將PSE端的源數據同步到PCE,那麼就讓我們開

原创 安卓源碼避坑指南2—HF側撥打藍牙電話的ID號一直是 -1

安卓源碼避坑指南2—撥打藍牙電話的ID號一直是 -1 又到了喜聞樂見的環節——安卓源碼避坑指南,同事使用android-9源碼全編了個系統鏡像,安裝完成後在HF側主動撥打一通藍牙電話後發現電話的ID號一直爲-1,AT命令中的“+C

原创 低功耗藍牙BLE傳統廣播總結

低功耗藍牙BLE傳統廣播總結 低功耗藍牙:Bluetooth Low Energy簡稱BLE,相較於傳統藍牙BT具有低功耗、低成本、小體積等優勢,BLE和BT都是工作在全世界公開通用的2.4GHz無線頻段上,但他們是完全不同的兩種

原创 藍牙協議分析工具

市面上有各種各樣的藍牙協議分析工具,但專業開發藍牙的公司裏基本都是使用Ellisys Bluetooth Analyzer和Frontline這兩種協議分析工具,與之配套的軟件也是各有千秋,但本人覺得Ellisys軟件的界面及使用

原创 NFC 標籤調度系統(Intent發佈)

NFC Intent發佈系統 Intent發佈系統也被稱爲標籤調度系統,調度系統定義了三種類型的action,見下表: ACTIVITY_INTENT_ACTION 類型 作用 優先級 ACTION_NDEF_DIS

原创 藍牙音樂AudioTrack Session ID的獲取

當今這個音視頻無處不在的時代,音頻跟蹤會話ID(AudioTrack Session ID)是個很重要的參數,可以用來實現音頻相關的一些特效。接下來的內容我們就探究如何在安卓藍牙系統中獲取該id。 熟悉藍牙音樂播放流程的同學都瞭解

原创 藍牙電話之HFP-連接

藍牙電話顧名思義就是使用藍牙技術實現電話撥打相關功能,當前市面上一般運用到藍牙音箱、藍牙手環和藍牙車載等設備上,由於車載藍牙涉及到的知識點更全面,所以主要以車載爲第一視角講解藍牙電話相關的內容。 藍牙電話總體上涉及到藍牙的HFP和

原创 藍牙電話之HFP-通話

藍牙電話之HFP-通話 文章《藍牙電話之HFP-連接》裏已經對HFP的連接進行了簡單分析,這篇主要和大家探討下通話場景下的相關操作,如撥打、接聽、掛斷電話(AG側、HF側)、切換聲道這幾個場景。 藍牙通話中主要涉及到以下兩個方面的