初學android藍芽小結

2021-08-19 20:07:32 字數 3725 閱讀 1851

1。藍芽的開啟

bluetoothadapter 

mbluetoothadapter

= bluetoothadapter.

getdefaultadapter

();//獲取

bluetoothadapter並判斷系統是否支援

if 

(!mbluetoothadapter

.isenabled())

2。獲取已經配對的裝置

setpaireddevices;
paireddevices= mbluetoothadapter.getbondeddevices();
if(paireddevices.size() >0)
3。掃瞄新裝置

intentfilter filter =newintentfilter(bluetoothdevice.action_found);

registerreceiver(mreceiver, filter);

// register for broadcasts when discovery has finished

filter =newintentfilter(bluetoothadapter.action_discovery_finished);

registerreceiver(mreceiver, filter);

// if we're already discovering, stop it

if(mbluetoothadapter.isdiscovering())

// request discover from bluetoothadapter

mbluetoothadapter.startdiscovery();

//新增新裝置
private finalbroadcastreceivermreceiver=newbroadcastreceiver() 

// when discovery is finished, change the activity title

}else if(bluetoothadapter.action_discovery_finished.equals(action))

}};

4。裝置的連線

private classconnectthreadextendsthreadelse

}catch(ioexception e)

mmsocket= tmp;

}@override

public voidrun()catch(ioexception e)catch(ioexception e2)

connectionfailed();

return;

}synchronized(bluetoothservice.this)

connected(mmsocket,mmdevice,msockettype);

}public voidcancel()catch(ioexception e)

}}

5連線後的資料收發

private classconnectedthreadextendsthreadcatch(ioexception e)

myinputstream= tmp1;

myoutputstream= tmp2;

}@override

public voidrun()

catch(ioexception e)}}

public voidwrite(bytebuffer)

catch(ioexception e)

}public voidcancel()catch(ioexception e)

}}

6上面是資料主動連線,下面是建立執行緒檢測別人的連線

private classacceptthreadextendsthreadelse

}catch(ioexception e)

bluetoothserversocket= tmp;

}@override

public voidrun()

catch(ioexception e)

// if a connection was accepted

if(socket !=null)catch(ioexception e)

break;}}

}}

}public voidcancel()

}

//以上基本完成了藍芽的開啟,掃瞄,配對,連線,收發的功能
宣告:原始碼是參照網上相關demo修改,並不是原創,本人只是在參考學習後做了相關總結。謝謝

xml初學小結

xml語言出現的根本目標在於描述上圖那種,在現實生活中經常出現的有關係的資料。在xml語言中,它允許使用者自定義標籤。乙個標籤用於描述一段資料 乙個標籤可分為開始標籤和結束標籤,在開始標籤和結束標籤之間,又可以使用其它標籤描述其它資料,以此來實現資料關係的描述。例如 中國 北京 海淀 海淀區 ml技...

VueJs React初學小結

先說一下我的學習方法 永遠學習最新的資料。vuejs中文文件比較嚴謹,本人看到英文文件好像是從中文硬翻譯過來的,所以建議看中文文件。這是我的一次學習筆記,過後有時間再寫乙個總結。通過props傳遞資料,同時要注意組織父子關係。class mycomponent extends react.compo...

android 藍芽檔案

利用android 傳送檔案需要解決一下幾個問題。1,傳送方選中檔案時如何獲取檔案位址?以下這段 作用是返回你選擇檔案的uri,因此你要重寫 onactivityresult來獲取返回的uri。但是這裡有有兩種情況存在先看下圖。當你選擇檔案管理的時候選擇其中的乙個檔案返回的uri為 file sto...