BlackBerry 655+ bluetooth ヘッドセットに接続するテスト アプリを作成しようとしています。基本的に、このアプリでやりたいことは、ヘッドセットに接続してボタンの圧力をキャッチすることです。ソケットの入力ストリームを読み取ることでそれができると思います。とにかく、ソケットに接続しようとすると、いくつかのエラーが発生します。コードは次のとおりです。
BluetoothSocket tmp = null;
try {
tmp = mDevice.createRfcommSocketToServiceRecord(
UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
} catch(IOException e) {}
mSocket = tmp;
mBtAdapter.cancelDiscovery();
try {
mSocket.connect(); // THIS ONE GIVES A "Service discovery failed" exception
} catch (IOException e1) {
Method m = null;
try {
m = mDevice.getClass().getMethod(
"createRfcommSocket", new Class[] {int.class});
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
try {
tmp = (BluetoothSocket) m.invoke(mDevice, 1);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
mSocket = tmp;
try {
mSocket.connect(); // THIS ONE GIVES A "Connection refused" EXCEPTION
} catch (IOException e) {
e.printStackTrace();
}
}
私は何を間違っていますか?m.invoke(mDevice, X) 命令ですでに別のポートを試しましたが、常に「接続が拒否されました」と表示されます