android藍牙配對
Ⅰ 安卓藍牙耳機怎麼配對
具體步驟:
1.我們在外出之前要記得給自己的藍牙耳機充滿電,以保證中途不會突然斷電,像諾基亞BH-503藍牙耳機,充滿一次電就能使用十個小時以上,這對於經常出 門 的人來說是很不錯的性能,並且諾基亞BH-503採用的是頭戴式不容易掉落。
2.充滿電之後,我們就可以開始進行連接配對了,首先我們先打開手機的藍牙功能,一般的手機藍牙選項在設置選項裡面,設置選項菜單一打開基本就能看見了,不會太難找。一般的安卓智能手機還要在藍牙選項裡面在設置「可以被設備檢測到」選項,讓自己的藍牙能夠檢測到自己的手機,諾基亞830就沒有這一繁瑣的步驟。
3.打開手機藍牙後,我們還要打開藍牙耳機,諾基亞BH-503的 開關 機方式是長按多功能件直至 指示燈 一直閃爍藍光,這樣就開機了並且能被連接(主要在閃爍綠光的時候不要鬆手,因為這樣只是開機並不能被手機連接到)關機和開機差不多,長按多功能鍵,直至紅光出現就算是關機了。
4.兩個設備都打開藍牙功能之後,我們就可以進行連接配對了。一般藍牙功能都是在10左右才有效,所以不要距離太遠。如果配對還提示需要配對密碼的話,我們的藍牙默認配對密碼基本上都是四個零,輸入密碼點擊配對,就可以進行配對了。如果連接不上,我們可以重新啟動藍牙,在進行重新配對。配對成功之後,藍牙耳機會滴的一聲以用來提示連接成功。這時諾基亞BH-503的指示燈就會以藍色的光芒進行緩慢閃爍,這就算連接成功了。
Ⅱ syu android藍牙連接方法
syu android藍牙連接方法先展示代碼結構。
藍牙是一種無線數據與語音通信的開放性全球規范,它以低成本的短距離無線連接為基礎,可為固定的或移動的終端設備提供廉價的接入服務。
藍牙(Bluetooth)是一項短途無線電連接系統,它可以將不同的電子器材連系起來。原理就好像收音機一樣,裝有藍牙的電子器材,可以接收外來的訊息,從而進行特定的指令。
藍牙簡介:
不過,藍牙不但可以接收,也都可以「傳送」,因此裝有藍牙的電子器材,能夠互相溝通。現在,大部分的電腦配件,如列印機、熒幕等,都要接駁上電線,才可以互傳訊息,但藍牙透過其短途的接收系統,便可以使這些配件在沒有駁線下,仍然能夠傳送指令,做到真正「無線」的世界。
頭藍技術實質內容是為固定設備或移動設備之間的通信環境建立通用的近距無線介面,將通信技術與計算機技術進一步結合起來,使各種設備在沒有電線或電纜相互連接的情況下,能在近距離范圍內實現相互通信或操作。藍牙功能可以參考下面的操作打開使用,打開其他設備的藍牙。
並使其對其他設備可見,打開下拉頂簾,點擊藍牙圖標使其變為綠色,跳出提示框,勾選對其他設備可見。點擊掃描,搜索到其他設備後,點擊該設備名稱,雙方點確定後配對成功。選擇要傳輸的文件,共享通過藍牙即可傳輸文件。
Ⅲ android 手機藍牙怎樣自動連接已配對的設備
藍牙和手機的詳細連接步驟如下:
1,手機打開藍牙功能,進去搜索藍牙耳機狀態。
2,使藍牙耳機在開機狀態,需要長按藍牙耳機的接聽鍵。
3,直到指示燈:藍燈紅燈交替閃爍再松開。
4,這個時候藍牙耳機和手機會再次進入匹對。
5,注意手機和藍牙距離要在10米內。
等手機上面顯示此藍牙型號設備後,點擊確定即可連接使用了。
Ⅳ android藍牙配對 如何自動配對設置PIN碼
Android對於音頻設備是自動輸入0000的pin碼的,參照$frameworks/base/core/java/android/server/BluetoothEventLoop.java 的onRequestPinCode()你若是在app里編寫代碼,可以在收到ACTION_PAIRING_REQUEST的時候,直接調用BluetoothDevice.setpin()reference $package/apps/Settings/src/android/settings/bluetooth/BluetoothPairingDialog.java 的onPair();
Ⅳ Android中如何實現藍牙的配對與連接
藍牙功能可以參考下面的操作打開使用:
1.打開其他設備的藍牙,並使其對其他設備可見。
2.打開下拉頂簾,點擊藍牙圖標使其變為綠色,跳出提示框,勾選對其他設備可見。
3.點擊掃描,搜索到其他設備後,點擊該設備名稱,雙方點確定後配對成功。
4.選擇要傳輸的文件,共享通過藍牙即可傳輸文件。
Ⅵ android 怎麼判斷藍牙配對成功
可以通過mDevice.getBondState()進行判斷是否需要配對;
如下代碼中: (mBluetoothDevice.getBondState()==BluetoothDevice.BOND_NONE表示未配對。可以在調用配對方法之後讀取一下這個狀態來判斷是否已配對成功。)
protectedvoidconnectDevice(){
try{
//連接建立之前的先配對
if(mBluetoothDevice.getBondState()==BluetoothDevice.BOND_NONE){
MethodcreMethod=BluetoothDevice.class
.getMethod("createBond");
Log.e("TAG","開始配對");
creMethod.invoke(mBluetoothDevice);
}else{
}
}catch(Exceptione){
//TODO:handleexception
//DisplayMessage("無法配對!");
e.printStackTrace();
}
mBluetoothAdapter.cancelDiscovery();
try{
socket.connect();
//DisplayMessage("連接成功!");
//connetTime++;
connected=true;
}catch(IOExceptione){
//TODO:handleexception
//DisplayMessage("連接失敗!");
connetTime++;
connected=false;
try{
socket.close();
socket=null;
}catch(IOExceptione2){
//TODO:handleexception
Log.e(TAG,"");
}
}finally{
connecting=false;
}
}
Ⅶ 如何實現android藍牙開發 自動配對連接,並不彈出提示框
我就開始查找怎麼關閉這個藍牙配對提示框,後面還是偉大的android源碼幫助了我。
在源碼 BluetoothDevice 類中還有兩個隱藏方法
cancelBondProcess()和cancelPairingUserInput()
這兩個方法一個是取消配對進程一個是取消用戶輸入
下面是自動配對的代碼
Mainfest,xml注冊
<receiverandroid:name=".">
<intent-filter>
<actionandroid:name="android.bluetooth.device.action.PAIRING_REQUEST"/>
</intent-filter>
</receiver>
自己在收到廣播時處理並將預先輸入的密碼設置進去
{
StringstrPsw="0";
@Override
publicvoidonReceive(Contextcontext,Intentintent)
{
//TODOAuto-generatedmethodstub
if(intent.getAction().equals(
"android.bluetooth.device.action.PAIRING_REQUEST"))
{
BluetoothDevicebtDevice=intent
.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
//byte[]pinBytes=BluetoothDevice.convertPinToBytes("1234");
//device.setPin(pinBytes);
Log.i("tag11111","ddd");
try
{
ClsUtils.setPin(btDevice.getClass(),btDevice,strPsw);//手機和藍牙採集器配對
ClsUtils.createBond(btDevice.getClass(),btDevice);
ClsUtils.cancelPairingUserInput(btDevice.getClass(),btDevice);
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
}
<b>/************************************藍牙配對函數***************/
importjava.lang.reflect.Field;
importjava.lang.reflect.Method;
importandroid.bluetooth.BluetoothDevice;
importandroid.util.Log;
publicclassClsUtils
{
/**
*與設備配對參考源碼:platform/packages/apps/Settings.git
*/Settings/src/com/android/settings/bluetooth/CachedBluetoothDevice.java
*/
staticpublicbooleancreateBond(ClassbtClass,BluetoothDevicebtDevice)
throwsException
{
MethodcreateBondMethod=btClass.getMethod("createBond");
BooleanreturnValue=(Boolean)createBondMethod.invoke(btDevice);
returnreturnValue.booleanValue();
}
/**
*與設備解除配對參考源碼:platform/packages/apps/Settings.git
*/Settings/src/com/android/settings/bluetooth/CachedBluetoothDevice.java
*/
staticpublicbooleanremoveBond(ClassbtClass,BluetoothDevicebtDevice)
throwsException
{
MethodremoveBondMethod=btClass.getMethod("removeBond");
BooleanreturnValue=(Boolean)removeBondMethod.invoke(btDevice);
returnreturnValue.booleanValue();
}
staticpublicbooleansetPin(ClassbtClass,BluetoothDevicebtDevice,
Stringstr)throwsException
{
try
{
MethodremoveBondMethod=btClass.getDeclaredMethod("setPin",
newClass[]
{byte[].class});
BooleanreturnValue=(Boolean)removeBondMethod.invoke(btDevice,
newObject[]
{str.getBytes()});
Log.e("returnValue",""+returnValue);
}
catch(SecurityExceptione)
{
//thrownewRuntimeException(e.getMessage());
e.printStackTrace();
}
catch(IllegalArgumentExceptione)
{
//thrownewRuntimeException(e.getMessage());
e.printStackTrace();
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returntrue;
}
//取消用戶輸入
(ClassbtClass,
BluetoothDevicedevice)
throwsException
{
MethodcreateBondMethod=btClass.getMethod("cancelPairingUserInput");
//cancelBondProcess()
BooleanreturnValue=(Boolean)createBondMethod.invoke(device);
returnreturnValue.booleanValue();
}
//取消配對
(ClassbtClass,
BluetoothDevicedevice)
throwsException
{
MethodcreateBondMethod=btClass.getMethod("cancelBondProcess");
BooleanreturnValue=(Boolean)createBondMethod.invoke(device);
returnreturnValue.booleanValue();
}
/**
*
*@paramclsShow
*/
(ClassclsShow)
{
try
{
//取得所有方法
Method[]hideMethod=clsShow.getMethods();
inti=0;
for(;i<hideMethod.length;i++)
{
Log.e("methodname",hideMethod[i].getName()+";andtheiis:"
+i);
}
//取得所有常量
Field[]allFields=clsShow.getFields();
for(i=0;i<allFields.length;i++)
{
Log.e("Fieldname",allFields[i].getName());
}
}
catch(SecurityExceptione)
{
//thrownewRuntimeException(e.getMessage());
e.printStackTrace();
}
catch(IllegalArgumentExceptione)
{
//thrownewRuntimeException(e.getMessage());
e.printStackTrace();
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}</b>
執行時直接使用:
<b>publicstaticbooleanpair(StringstrAddr,StringstrPsw)
{
booleanresult=false;
=BluetoothAdapter
.getDefaultAdapter();
bluetoothAdapter.cancelDiscovery();
if(!bluetoothAdapter.isEnabled())
{
bluetoothAdapter.enable();
}
if(!BluetoothAdapter.checkBluetoothAddress(strAddr))
{//檢查藍牙地址是否有效
Log.d("mylog","devAdneffient!");
}
BluetoothDevicedevice=bluetoothAdapter.getRemoteDevice(strAddr);
if(device.getBondState()!=BluetoothDevice.BOND_BONDED)
{
try
{
Log.d("mylog","NOTBOND_BONDED");
ClsUtils.setPin(device.getClass(),device,strPsw);//手機和藍牙採集器配對
ClsUtils.createBond(device.getClass(),device);
remoteDevice=device;//配對完畢就把這個設備對象傳給全局的remoteDevice
result=true;
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
Log.d("mylog","setPiNfailed!");
e.printStackTrace();
}//
}
else
{
Log.d("mylog","HASBOND_BONDED");
try
{
ClsUtils.createBond(device.getClass(),device);
ClsUtils.setPin(device.getClass(),device,strPsw);//手機和藍牙採集器配對
ClsUtils.createBond(device.getClass(),device);
remoteDevice=device;//如果綁定成功,就直接把這個設備對象傳給全局的remoteDevice
result=true;
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
Log.d("mylog","setPiNfailed!");
e.printStackTrace();
}
}
returnresult;
}</b>
Ⅷ 安卓手機系統怎麼藍牙配對
設置--無線和網路--藍牙
選中那個框就可以了
Ⅸ 如何實現android藍牙自動配對連接
android藍牙自動配對連接的具體代碼如下:
1. 獲取藍牙適配器BluetoothAdapter blueadapter=BluetoothAdapter.getDefaultAdapter();
如果BluetoothAdapter 為null,說明android手機沒有藍牙模塊。
2. 判斷藍牙模塊是否開啟,blueadapter.isEnabled() true表示已經開啟,false表示藍牙並沒啟用。
3. 啟動配置藍牙可見模式,即進入可配對模式Intent in=new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
in.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 200);
startActivity(in); ,200就表示200秒。
4. 獲取藍牙適配器中已經配對的設備Set<BluetoothDevice> device=blueadapter.getBondedDevices();
當然,還需要在androidManifest.xml中聲明藍牙的許可權
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
5.自動配對設置Pin值
static public boolean autoBond(Class btClass, BluetoothDevice device, String strPin)
throws Exception {
Method autoBondMethod = btClass.getMethod("setPin", new Class[] { byte[].class });
Boolean result = (Boolean) autoBondMethod
.invoke(device, new Object[] { strPin.getBytes() });
return result;
}
6.開始配對請求
static public boolean createBond(Class btClass, BluetoothDevice device) throws Exception {
Method createBondMethod = btClass.getMethod("createBond");
Boolean returnValue = (Boolean) createBondMethod.invoke(device);
return returnValue.booleanValue();
}
Ⅹ android藍牙怎麼控制手機
機連接不上藍牙耳機有以下幾個解決辦法:一、藍牙耳機沒有進入配對模式;解決方法:每一款藍牙耳機都有一個功能按鍵,長按多功能按鍵直至紅藍燈交替閃動後鬆手,打開手機藍牙進行搜索 配對即可連接解決方法:同時按住 多 功能按鍵和音量控制+鍵 大約4秒 紅燈閃動一下,表示清除所有配對記錄,然後再長按多 功能 按鍵直至紅藍燈交替閃動後,打開手機藍牙配 對連接即可三、手機藍牙與 耳機藍牙版本不兼容。這個無法解決,建議 找耳機賣家進行退換貨。