真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android藍牙4.0,Android藍牙耳機

安卓手機的藍牙4.0和蘋果的藍牙4.0一樣嗎

一樣,藍牙4.0只是模塊升級,現(xiàn)在的很多android 4.0一下的手機無法與藍牙4.0設備通信,android4.2版本會去除linux原先的bluez藍牙協(xié)議棧,用博通公司的bluedroid協(xié)議棧,估計這個android的release 可以支持藍牙4.0.。iphone4s以上的蘋果手機,都可以支持藍牙4.0

10年的紅崗網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調整紅崗建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)公司從事“紅崗網(wǎng)站設計”,“紅崗網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。

android藍牙4.0怎么設置藍牙寫權限

基本步驟:

獲取藍牙適配器BluetoothAdapter blueadapter=BluetoothAdapter.getDefaultAdapter();

如果BluetoothAdapter 為null,說明android手機沒有藍牙模塊。

判斷藍牙模塊是否開啟,blueadapter.isEnabled() true表示已經(jīng)開啟,false表示藍牙并沒啟用。

啟動配置藍牙可見模式,即進入可配對模式Intent in=new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);

in.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 200);

startActivity(in); ,200就表示200秒。

獲取藍牙適配器中已經(jīng)配對的設備SetBluetoothDevice device=blueadapter.getBondedDevices();

還需要在androidManifest.xml中聲明藍牙的權限

uses-permission android:name="android.permission.BLUETOOTH" /

uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /

接下來就是根據(jù)自己的需求對BluetoothAdapter 的操作了。

android藍牙ble4.0開發(fā)共享失敗怎么辦

2.1首先獲取BluetoothManager

復制代碼 代碼如下:

BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);

2.2獲取BluetoothAdapter

復制代碼 代碼如下:

BluetoothAdapter mBluetoothAdapter = bluetoothManager.getAdapter();

2.3創(chuàng)建BluetoothAdapter.LeScanCallback

private BluetoothAdapter.LeScanCallback mLeScanCallback = new BluetoothAdapter.LeScanCallback() {

@Override

public void onLeScan(final BluetoothDevice device, int rssi, final byte[] scanRecord) {

runOnUiThread(new Runnable() {

@Override

public void run() {

try {

String struuid = NumberUtils.bytes2HexString(NumberUtils.reverseBytes(scanRecord)).replace("-", "").toLowerCase();

if (device!=null struuid.contains(DEVICE_UUID_PREFIX.toLowerCase())) {

mBluetoothDevices.add(device);

}

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

};

2.4.開始搜索設備。

復制代碼 代碼如下:

mBluetoothAdapter.startLeScan(mLeScanCallback);

2.5.BluetoothDevice 描述了一個藍牙設備 提供了getAddress()設備Mac地址,getName()設備的名稱。

2.6開始連接設備

/**

* Connects to the GATT server hosted on the Bluetooth LE device.

*

* @param address

* The device address of the destination device.

*

* @return Return true if the connection is initiated successfully. The

* connection result is reported asynchronously through the

* {@code BluetoothGattCallback#onConnectionStateChange(android.bluetooth.BluetoothGatt, int, int)}

* callback.

*/

public boolean connect(final String address) {

if (mBluetoothAdapter == null || address == null) {

Log.w(TAG, "BluetoothAdapter not initialized or unspecified address.");

return false;

}

// Previously connected device. Try to reconnect. (先前連接的設備。 嘗試重新連接)

if (mBluetoothDeviceAddress != null address.equals(mBluetoothDeviceAddress) mBluetoothGatt != null) {

Log.d(TAG, "Trying to use an existing mBluetoothGatt for connection.");

if (mBluetoothGatt.connect()) {

mConnectionState = STATE_CONNECTING;

return true;

} else {

return false;

}

}

final BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(address);

if (device == null) {

Log.w(TAG, "Device not found. Unable to connect.");

return false;

}

// We want to directly connect to the device, so we are setting the

// autoConnect

// parameter to false.

mBluetoothGatt = device.connectGatt(this, false, mGattCallback);

Log.d(TAG, "Trying to create a new connection.");

mBluetoothDeviceAddress = address;

mConnectionState = STATE_CONNECTING;

return true;

}

2.7連接到設備之后獲取設備的服務(Service)和服務對應的Characteristic。

// Demonstrates how to iterate through the supported GATT

// Services/Characteristics.

// In this sample, we populate the data structure that is bound to the

// ExpandableListView

// on the UI.

private void displayGattServices(ListBluetoothGattService gattServices) {

if (gattServices == null)

return;

String uuid = null;

ArrayListHashMapString, String gattServiceData = new ArrayList();

ArrayListArrayListHashMapString, String gattCharacteristicData = new ArrayList();

mGattCharacteristics = new ArrayList();

// Loops through available GATT Services.

for (BluetoothGattService gattService : gattServices) {

HashMapString, String currentServiceData = new HashMap();

uuid = gattService.getUuid().toString();

if (uuid.contains("ba11f08c-5f14-0b0d-1080")) {//服務的uuid

//System.out.println("this gattService UUID is:" + gattService.getUuid().toString());

currentServiceData.put(LIST_NAME, "Service_OX100");

currentServiceData.put(LIST_UUID, uuid);

gattServiceData.add(currentServiceData);

ArrayListHashMapString, String gattCharacteristicGroupData = new ArrayList();

ListBluetoothGattCharacteristic gattCharacteristics = gattService.getCharacteristics();

ArrayListBluetoothGattCharacteristic charas = new ArrayList();

// Loops through available Characteristics.

for (BluetoothGattCharacteristic gattCharacteristic : gattCharacteristics) {

charas.add(gattCharacteristic);

HashMapString, String currentCharaData = new HashMap();

uuid = gattCharacteristic.getUuid().toString();

if (uuid.toLowerCase().contains("cd01")) {

currentCharaData.put(LIST_NAME, "cd01");

} else if (uuid.toLowerCase().contains("cd02")) {

currentCharaData.put(LIST_NAME, "cd02");

} else if (uuid.toLowerCase().contains("cd03")) {

currentCharaData.put(LIST_NAME, "cd03");

} else if (uuid.toLowerCase().contains("cd04")) {

currentCharaData.put(LIST_NAME, "cd04");

} else {

currentCharaData.put(LIST_NAME, "write");

}

currentCharaData.put(LIST_UUID, uuid);

gattCharacteristicGroupData.add(currentCharaData);

}

mGattCharacteristics.add(charas);

gattCharacteristicData.add(gattCharacteristicGroupData);

mCharacteristicCD01 = gattService.getCharacteristic(UUID.fromString("0000cd01-0000-1000-8000-00805f9b34fb"));

mCharacteristicCD02 = gattService.getCharacteristic(UUID.fromString("0000cd02-0000-1000-8000-00805f9b34fb"));

mCharacteristicCD03 = gattService.getCharacteristic(UUID.fromString("0000cd03-0000-1000-8000-00805f9b34fb"));

mCharacteristicCD04 = gattService.getCharacteristic(UUID.fromString("0000cd04-0000-1000-8000-00805f9b34fb"));

mCharacteristicWrite = gattService.getCharacteristic(UUID.fromString("0000cd20-0000-1000-8000-00805f9b34fb"));

//System.out.println("=======================Set Notification==========================");

// 開始順序監(jiān)聽,第一個:CD01

mBluetoothLeService.setCharacteristicNotification(mCharacteristicCD01, true);

mBluetoothLeService.setCharacteristicNotification(mCharacteristicCD02, true);

mBluetoothLeService.setCharacteristicNotification(mCharacteristicCD03, true);

mBluetoothLeService.setCharacteristicNotification(mCharacteristicCD04, true);

}

}

}

2.8獲取到特征之后,找到服務中可以向下位機寫指令的特征,向該特征寫入指令。

public void wirteCharacteristic(BluetoothGattCharacteristic characteristic) {

if (mBluetoothAdapter == null || mBluetoothGatt == null) {

Log.w(TAG, "BluetoothAdapter not initialized");

return;

}

mBluetoothGatt.writeCharacteristic(characteristic);

}

2.9寫入成功之后,開始讀取設備返回來的數(shù)據(jù)。

private final BluetoothGattCallback mGattCallback = new BluetoothGattCallback() {

@Override

public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {

String intentAction;

//System.out.println("=======status:" + status);

if (newState == BluetoothProfile.STATE_CONNECTED) {

intentAction = ACTION_GATT_CONNECTED;

mConnectionState = STATE_CONNECTED;

broadcastUpdate(intentAction);

Log.i(TAG, "Connected to GATT server.");

// Attempts to discover services after successful connection.

Log.i(TAG, "Attempting to start service discovery:" + mBluetoothGatt.discoverServices());

} else if (newState == BluetoothProfile.STATE_DISCONNECTED) {

intentAction = ACTION_GATT_DISCONNECTED;

mConnectionState = STATE_DISCONNECTED;

Log.i(TAG, "Disconnected from GATT server.");

broadcastUpdate(intentAction);

}

}

@Override

public void onServicesDiscovered(BluetoothGatt gatt, int status) {

if (status == BluetoothGatt.GATT_SUCCESS) {

broadcastUpdate(ACTION_GATT_SERVICES_DISCOVERED);

} else {

Log.w(TAG, "onServicesDiscovered received: " + status);

}

}

//從特征中讀取數(shù)據(jù)

@Override

public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {

//System.out.println("onCharacteristicRead");

if (status == BluetoothGatt.GATT_SUCCESS) {

broadcastUpdate(ACTION_DATA_AVAILABLE, characteristic);

}

}

//向特征中寫入數(shù)據(jù)

@Override

public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {

//System.out.println("--------write success----- status:" + status);

}

/*

* when connected successfully will callback this method this method can

* dealwith send password or data analyze

*當連接成功將回調該方法

*/

@Override

public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {

broadcastUpdate(ACTION_DATA_AVAILABLE, characteristic);

if (characteristic.getValue() != null) {

//System.out.println(characteristic.getStringValue(0));

}

//System.out.println("--------onCharacteristicChanged-----");

}

@Override

public void onDescriptorWrite(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {

//System.out.println("onDescriptorWriteonDescriptorWrite = " + status + ", descriptor =" + descriptor.getUuid().toString());

UUID uuid = descriptor.getCharacteristic().getUuid();

if (uuid.equals(UUID.fromString("0000cd01-0000-1000-8000-00805f9b34fb"))) {

broadcastUpdate(ACTION_CD01NOTIDIED);

} else if (uuid.equals(UUID.fromString("0000cd02-0000-1000-8000-00805f9b34fb"))) {

broadcastUpdate(ACTION_CD02NOTIDIED);

} else if (uuid.equals(UUID.fromString("0000cd03-0000-1000-8000-00805f9b34fb"))) {

broadcastUpdate(ACTION_CD03NOTIDIED);

} else if (uuid.equals(UUID.fromString("0000cd04-0000-1000-8000-00805f9b34fb"))) {

broadcastUpdate(ACTION_CD04NOTIDIED);

}

}

@Override

public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {

//System.out.println("rssi = " + rssi);

}

};

----------------------------------------------

//從特征中讀取數(shù)據(jù)

@Override

public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {

//System.out.println("onCharacteristicRead");

if (status == BluetoothGatt.GATT_SUCCESS) {

broadcastUpdate(ACTION_DATA_AVAILABLE, characteristic);

}

}

android中藍牙2.0和4.0的區(qū)別是什么?

最主要的區(qū)別就是藍牙2.0的傳輸速度沒有藍牙4.0快。以下為藍牙各版本的說明。\x0d\x0a\x0d\x0a1.1 為最早期版本,傳輸率約在748~810kb/s,因是早期設計,容易受到同頻率之產品所干擾下影響通訊質量。\x0d\x0a藍牙1.2標準\x0d\x0a1.2 同樣是只有 748~810kb/s 的傳輸率,但在加上了(改善 Software)抗干擾跳頻功能。\x0d\x0a藍牙2.0標準\x0d\x0a2.0 是 1.2 的改良提升版,傳輸率約在 1.8M/s~2.1M/s,開始支持雙工模式——即一面作語音通訊,同時亦可以傳輸檔案/高質素圖片,2.0 版本當然也支持 Stereo 運作。\x0d\x0a應用最為廣泛的是Bluetooth 2.0+EDR標準,該標準在2004年已經(jīng)推出,支持Bluetooth 2.0+EDR標準的產品也于2006年大量出現(xiàn)。\x0d\x0a雖然Bluetooth 2.0+EDR標準在技術上作了大量的改進,但從1.X標準延續(xù)下來的配置流程復雜和設備功耗較大的問題依然存在。\x0d\x0a藍牙2.1標準\x0d\x0a2007年8月2日,藍牙技術聯(lián)盟今天正式批準了藍牙2.1版規(guī)范,即“藍牙2.1+EDR”,可供未來的設備自由使用。和2.0版本同時代產品,目前仍然占據(jù)藍牙市場較大份額,相對2.0版本主要是提高了待機時間2倍以上,技術標準沒有根本性變化。\x0d\x0a藍牙3.0標準\x0d\x0a2009年4月21日,藍牙技術聯(lián)盟(Bluetooth SIG)正式頒布了新一代標準規(guī)范"Bluetooth Core Specification Version 3.0 High Speed"(藍牙核心規(guī)范3.0版 ),藍牙3.0的核心是"Generic Alternate MAC/PHY"(AMP),這是一種全新的交替射頻技術,允許藍牙協(xié)議棧針對任一任務動態(tài)地選擇正確射頻。\x0d\x0a藍牙3.0的數(shù)據(jù)傳輸率提高到了大約24Mbps(即可在需要的時候調用802.11 WI-FI用于實現(xiàn)高速數(shù)據(jù)傳輸)。在傳輸速度上,藍牙3.0是藍牙2.0的八倍,可以輕松用于錄像機至高清電視、PC至PMP、UMPC至打印機之間的資料傳輸,但是需要雙方都達到此標準才能實現(xiàn)功能。\x0d\x0a藍牙4.0標準\x0d\x0a藍牙4.0規(guī)范于2010年7月7日正式發(fā)布,新版本的最大意義在于低功耗,同時加強不同OEM廠商之間的設備兼容性,并且降低延遲,理論最高傳輸速度依然為24Mbps(即3MB/s),有效覆蓋范圍擴大到100米(之前的版本為10米)。該標準芯片被大量的手機、平板所采用,如蘋果The New iPad平板電腦,以及蘋果iPhone 5、魅族MX4、HTC One X等手機上帶有藍牙4.0功能。\x0d\x0a藍牙4.1標準\x0d\x0a藍牙4.1于2013年12月6日發(fā)布,與LTE無線電信號之間如果同時傳輸數(shù)據(jù),那么藍牙4.1可以自動協(xié)調兩者的傳輸信息,理論上可以減少 其它信號對藍牙4.1的干擾。改進是提升了連接速度并且更加智能化,比如減少了設備之間重新連接的時間,意味著用戶如果走出了藍牙4.1的信號范圍并且斷開連接的時間不算很長,當用戶再次回到信號范圍中之后設備將自動連接,反應時間要比藍牙4.0更短。最后一個改進之處是提高傳輸效率,如果用戶連接的設備 非常多,比如連接了多部可穿戴設備,彼此之間的信息都能即時發(fā)送到接接收設備上。\x0d\x0a除此之外,藍牙4.1也為開發(fā)人員增加了更多的靈活性,這個改變對普通用戶沒有很大影響,但是對于軟件開發(fā)者來說是很重要的,因為為了應對逐漸興起的可穿戴設備,那么藍牙必須能夠支持同時連接多部設備。\x0d\x0a目前支持該標準的手機還比較少,三星GALAXY Note4則是其中具有代表性的一款。\x0d\x0a藍牙4.2標準\x0d\x0a2014年12月4日,最新的藍牙4.2標準頒布,改善了數(shù)據(jù)傳輸速度和隱私保護程度,并接入了該設備將可直接通過IPv6和6LoWPAN接入互聯(lián)網(wǎng)。在新的標準下藍牙信號想要連接或者追蹤用戶設備必須經(jīng)過用戶許可,否則藍牙信號將無法連接和追蹤用戶設備。\x0d\x0a速度方面變得更加快速,兩部藍牙設備之間的數(shù)據(jù)傳輸速度提高了2.5倍,因為藍牙智能(Bluetooth Smart)數(shù)據(jù)包的容量提高,其可容納的數(shù)據(jù)量相當于此前的10倍左右。藍牙的版本自然是越高級越好,考慮到傳輸距離和功耗的問題,最新的藍牙4.1是優(yōu)選,但是目前市場上藍牙4.1的產品并不多,而主流的藍牙4.0產品性價比更高,至于藍牙3.0、2.1及以下的版本已經(jīng)失去選購的價值。

如何使用android原生BLE藍牙進行操作?

之前的涉及的物聯(lián)網(wǎng)項目中使用的: BLE 低功耗藍牙(藍牙4.0), 支持android 4.3以上的手機

主從關系: BLE低功耗藍牙只能做從端設備 ,一個藍牙主端設備,可同時與7個藍牙從端設備進行通訊

1)低功耗

低功耗的原理:

1\低功耗藍牙僅使用了3個廣播通道,傳統(tǒng)藍牙技術采用 16~32 個頻道

2\每次廣播開啟時間也由傳統(tǒng)的 22.5ms 減少到 0.6~1.2ms(毫秒)

2)傳輸距離極大提高

傳統(tǒng)藍牙傳輸距離為 2~10m,而藍牙4.0的有效傳輸距離可達到 60~100m

3)安全性

使用AES-128 CCM加密算法進行數(shù)據(jù)包加密和認證。

更多BLE藍牙的解析參考博客 : BLE4.0教程一 藍牙協(xié)議連接過程與廣播分析

添加權限

打開藍牙

1.先拿到BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);

2.再拿到BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();

判斷是否打開藍牙

未打開彈出 系統(tǒng)彈框 ,除了 魅族手機 是打開系統(tǒng)設置

設備/手機都是藍牙信號

在回調方法中:

一般在掃描的過程中,我們還會設置 設備過濾原則 (因為我只想要搜索到我們想要的設備,忽略無關設備)

如:從 scanRecord -- beacon -- beacon.type == 0xFF代表Manufacture,通過與嵌入式軟件定義 自己的 Manufacture值即可

用BluetoothDevice得到BluetoothGatt:

斷連:

關鍵問題:連接后一般要做什么事?

( 必須在剛連接成功后2秒內app寫一個值給設備,否則會被設備斷開連接)

主要是讀寫 characteristic

gatt.wirteCharacteristic(mCurrentcharacteristic);

gatt.readCharacteristic(characteristic);

bluetoothGatt.setCharacteristicNotification(data, true);

真實工作中使用的藍牙庫BlueToothKit請參考我的另一篇博客:

android藍牙入門知識和優(yōu)秀藍牙第三方庫BluetoothKit的使用

android 4.0 藍牙開發(fā) 怎么入手

本文介紹Android ble 藍牙4.0,也就是說API level = 18,且支持藍牙4.0的手機才可以使用,如果手機系統(tǒng)版本API level 18,也是用不了藍牙4.0的哦。

首先發(fā)一下官方的demo,有興趣的可以過去看看:。android系統(tǒng)4.3以上,手機支持藍牙4.0,具有搜索,配對,連接,發(fā)現(xiàn)服務及特征值,斷開連接等功能,下載地址:。

一、了解api及概念

1.1 BluetoothGatt

繼承BluetoothProfile,通過BluetoothGatt可以連接設備(connect),發(fā)現(xiàn)服務(discoverServices),并把相應地屬性返回到BluetoothGattCallback

1.2 BluetoothGattCharacteristic

相當于一個數(shù)據(jù)類型,它包括一個value和0~n個value的描述(BluetoothGattDescriptor)

1.3 BluetoothGattDescriptor

描述符,對Characteristic的描述,包括范圍、計量單位等

1.4 BluetoothGattService

服務,Characteristic的集合。

1.5 BluetoothProfile

一個通用的規(guī)范,按照這個規(guī)范來收發(fā)數(shù)據(jù)。

1.6 BluetoothManager

通過BluetoothManager來獲取BluetoothAdapter

BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);

1.7 BluetoothAdapter

一個Android系統(tǒng)只有一個BluetoothAdapter ,通過BluetoothManager 獲取

BluetoothAdapter mBluetoothAdapter = bluetoothManager.getAdapter();

1.8 BluetoothGattCallback

已經(jīng)連接上設備,對設備的某些操作后返回的結果。這里必須提醒下,已經(jīng)連接上設備后的才可以返回,沒有返回的認真看看有沒有連接上設備。

private BluetoothGattCallback GattCallback = new BluetoothGattCallback() {

// 這里有9個要實現(xiàn)的方法,看情況要實現(xiàn)那些,用到那些就實現(xiàn)那些

public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState){};

public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status){};

};

BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(address);

BluetoothGatt gatt = device.connectGatt(this, false, mGattCallback);

1.8.1:notification對應onCharacteristicChanged;

gatt.setCharacteristicNotification(characteristic, true);

1.8.2:readCharacteristic對應onCharacteristicRead;

gatt.readCharacteristic(characteristic);

1.8.3: writeCharacteristic對應onCharacteristicWrite;

gatt.wirteCharacteristic(mCurrentcharacteristic);

1.8.4:連接藍牙或者斷開藍牙 對應 onConnectionStateChange;

1.8.5: readDescriptor對應onDescriptorRead;

1.8.6:writeDescriptor對應onDescriptorWrite;

gatt.writeDescriptor(descriptor);

1.8.7:readRemoteRssi對應onReadRemoteRssi;

gatt.readRemoteRssi()

1.8.8:executeReliableWrite對應onReliableWriteCompleted;

1.8.9:discoverServices對應onServicesDiscovered。

gatt.discoverServices()

1.9 BluetoothDevice

掃描后發(fā)現(xiàn)可連接的設備,獲取已經(jīng)連接的設備

二、開啟藍牙權限

uses-permission android:name="android.permission.BLUETOOTH"/

uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/

uses-feature android:name="android.hardware.bluetooth_le" android:required="true"/

如果 android.hardware.bluetooth_le設置為false,可以安裝在不支持的設備上使用,判斷是否支持藍牙4.0用以下代碼就可以了

if (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE)) {

Toast.makeText(this, "設備不支持藍牙4.0", Toast.LENGTH_SHORT).show();

finish();

}

三、對藍牙的啟動關閉操作

1、利用系統(tǒng)默認開啟藍牙對話框

if (mBluetoothAdapter == null || !mBluetoothAdapter.isEnabled()) {

Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);

}

2、后臺打開藍牙,不做任何提示,這個也可以用來自定義打開藍牙對話框啦

mBluetoothAdapter.enable();

3、后臺關閉藍牙

mBluetoothAdapter.disable();

四、掃描設備,連接設備,獲取設備信息 ,斷開連接設備,自行查看官方demo,還是看demo比較清晰啊


本文題目:android藍牙4.0,Android藍牙耳機
瀏覽地址:http://weahome.cn/article/hospeo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部