經典藍芽連線 藍芽音箱或藍芽耳機

2021-07-14 17:52:51 字數 2822 閱讀 2946

生活中我們經常使用藍芽耳機來接聽**,而隨著科技的進步,現在藍芽多了一種新的規範:a2dp(advance audio distribution profile),可以用 44.1 khz 的 來傳輸聲音,因此現在可以使用藍芽耳機來享受音樂,接下來就來介紹如何在 android 中連線 a2dp 的藍芽裝置。

使用 bluetooth 最主要的乙個類就是 bluetoothadapter,我們會通過這個類來啟動、停止藍芽或做搜尋 (discovery)藍芽裝置的動作,首先我們先取得該類例項:

mbluetoothadapter = bluetoothadapter.getdefaultadapter();

接著檢視藍芽是否有開啟,沒有的話我們直接將藍芽裝置開啟:

public boolean enablebluetooth() 

}return true;

}

成功啟動藍芽後,我們就可以開始來搜尋周圍的藍芽裝置了。在探索之前,我們必須先註冊 

broadcast receiver

,因為搜尋到的藍芽裝置會通過 broadcast 的方式通知。

這裡註冊bluetoothdevice.action_found

以及 bluetoothadapter.action_discovery_finished:

intentfilter intentfilter = new intentfilter();

intentfilter.addaction(bluetoothdevice.action_found);

intentfilter.addaction

(bluetoothdevice.action_bond_state_changed);

intentfilter.addaction

(bluetoothadapter.action_scan_mode_changed);

intentfilter.addaction

(bluetoothadapter.action_state_changed);

// 註冊廣播接收器,接收並處理搜尋結果

registerreceiver(mreceiver, intentfilter);

接著我們就可以通過bluetoothadapter 來搜尋周圍的

藍芽裝置了:

public void startdiscovery() 

}

停止搜尋周圍的藍芽裝置:

public void stopdiscovery() 

}

成功搜尋到藍芽裝置之後,我們可以通過剛剛取得到的 bluetoothdevice 進行配對的動作:

public void pairdevice(bluetoothdevice device)  catch (exception e) 

}

成功配對後我們就可以來連線該

藍芽裝置,我們這裡要使用 a2dp 的規範,因此需要通過 

bluetootha2dp

這類來進行連線的動作,

而這個類的取得方式一樣要通過 bluetoothadapter:

mbluetoothadapter.getprofileproxy(mcontext, new servicelistener() 

}@override

public void onservicedisconnected(int profile)

}}, bluetoothprofile.a2dp);

成功取得 bluetootha2dp 類後,我們就可以通過該類來連線 a2dp 的藍芽裝置了:

public void connectdevice(bluetoothdevice device)  catch (exception e) 

}

最後我們可以註冊bluetootha2dp.action_connection_state_changed 這個 intentfilter 來接收 a2dp 的連線狀態:

private final broadcastreceiver mreceiver = new broadcastreceiver()  else if (bluetoothadapter.action_discovery_finished.equals(intent.getaction()))  else if (bluetoothdevice.action_bond_state_changed.equals(intent.getaction()))  else if (state == bluetoothdevice.bond_none && prevstate == bluetoothdevice.bond_bonded) 

} else if (bluetootha2dp.action_connection_state_changed.equals(intent.getaction())) else if (state == bluetootha2dp.state_disconnected) }}

};

成功連線後,你就會發現藍芽裝置的聲音正通過你的藍芽耳機輸出。

藍芽音箱的連線和斷開

藍芽掃瞄等操作的所需要許可權 1.需要用到的類 public bluetoothadapter bluetoothadapter private bluetootha2dp bluetootha2dp 2.初始化 bluetoothadapter bluetoothadapter.getdefaul...

有關藍芽耳機和藍芽音訊的那點事兒

耳機這部分,目前市面上來講,一般是根據有線和無線來區分,有線耳機一般按照介面可分為3.5mm介面和6.5mm介面 按照佩戴方式一般分為頭戴式 入耳式等。不同價位的耳機,區別主要在兩部分 其一 單元部分,這部分決定了耳機的解析能力 聲場 動態等,這部分不同廠商選材不一樣,調教方式不一樣,特色也不一樣 ...

藍芽音箱CE FCC是強制的嗎

ce認證類別如下 red認證與r tte認證 2014年5月22日,歐盟官方公布了新版的無線裝置指令red 2014 53 eu,該指令是基於歐盟新的ce框架決議768 2008 ec編寫的,red 2014 53 eu取代原有的歐盟無線裝置指令r tte d 1999 5 ec。自歐盟官方公布新指...