0

コードを使用して Bluetooth 接続を行っていますが、

public void run() 
{
    try 
    {




        Method m = mBluetoothDevice.getClass().getMethod("createRfcommSocket", new Class[] {int.class});
        mBluetoothSocket = (BluetoothSocket) m.invoke(mBluetoothDevice, 1);


       // mBluetoothSocket = mBluetoothDevice.createRfcommSocketToServiceRecord(applicationUUID);
        mBluetoothAdapter.cancelDiscovery();

        mBluetoothSocket.connect();





    }
    catch (IOException eConnectException) 
    {
        Log.d(TAG, "CouldNotConnectToSocket", eConnectException);
         closeSocket(mBluetoothSocket);
         return;
    } catch (SecurityException e) {

        Log.d(TAG, "CouldNotConnectToSocket", e);
        closeSocket(mBluetoothSocket);
    } catch (NoSuchMethodException e) {

        Log.d(TAG, "CouldNotConnectToSocket", e);
        closeSocket(mBluetoothSocket);
    } catch (IllegalArgumentException e) {
        Log.d(TAG, "CouldNotConnectToSocket", e);
        closeSocket(mBluetoothSocket);
    } catch (IllegalAccessException e) {
        Log.d(TAG, "CouldNotConnectToSocket", e);
        closeSocket(mBluetoothSocket);
    } catch (InvocationTargetException e) {
        Log.d(TAG, "CouldNotConnectToSocket", e);
        closeSocket(mBluetoothSocket);
    }
}

Android 2.2のKarbonnデバイスで正常に動作していますが、Samsung Galaxy YとSony Ericson Xperia miniで同じコードを試しても動作しません...何が問題なのか..親切に助けてください...

4

1 に答える 1

0

マニフェストにアクセス許可を設定しましたか?

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>

そして、あなたの例外は正確には何ですか?

編集: この http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#ACTION_ACL_DISCONNECTED によると、発生してはならない低レベルの例外です。

Bluetoothデバイスが接続されているかどうかをプログラムで確認する方法は? (Android 2.2) これは役に立ちますか?

于 2012-04-26T12:31:52.277 に答える