【问题标题】:Error Connecting to Bluetooth on Acer Iconia B1在 Acer Iconia B1 上连接到蓝牙时出错
【发布时间】:2013-09-17 22:30:57
【问题描述】:

感谢您查看我的问题。我在 Arduino 上使用 RN42 或 HC05 蓝牙模块开发了一个蓝牙应用程序。这将是一个我希望放在 Play Store 上的应用程序。该应用程序似乎在我检查过的大多数平板电脑上都能正常工作,除了一个(我们想要使用的那个!)Acer Iconia B1。

我从 logCat 得到的错误是:

03-08 21:35:10.972: I/BluetoothSocket_MTK(2712): [JSR82] Bluetooth Socket Constructor
03-08 21:35:10.972: I/BluetoothSocket_MTK(2712): [JSR82] type=1 fd=-1 auth=false encrypt=false port=1
03-08 21:35:10.973: D/ActivityThread(1708): BDC-Calling finishReceiver: IIntentReceiver=41441d20
03-08 21:35:10.974: D/BTSocketService(402): [JSR82][Service] initSocket
03-08 21:35:10.974: I/BluetoothSocketService.cpp(402): [JSR82][JNI] initSocketNative +++.
03-08 21:35:10.974: I/BluetoothSocketService.cpp(402): [JSR82][JNI] initSocketNative: start to initialize socket.
03-08 21:35:10.975: I/BluetoothSocketService.cpp(402): [JSR82][JNI] type=1, auth=0, encrypt=0, port=1
03-08 21:35:10.975: I/BluetoothSocketService.cpp(402): [JSR82][JNI] initSocketNative: Initialize socket done.
03-08 21:35:10.975: E/BluetoothSocketService.cpp(402): [JSR82][JNI] No free context space; the APP has registered 20 services.
03-08 21:35:10.975: I/BluetoothSocketService.cpp(402): [JSR82][JNI] initSocketNative ---. fdHandle=0
03-08 21:35:10.975: D/Bluetooth(2712): ++++ Connecting to 00:12:05:22:95:84
03-08 21:35:10.975: D/BTSocketService(402): [JSR82][Service] connect
03-08 21:35:10.975: I/BluetoothSocketService.cpp(402): [JSR82][JNI] connectNative +++. fd=0.
03-08 21:35:10.975: E/BluetoothSocketService.cpp(402): [JSR82][JNI] connectNative: The FD (0) doesn't exist.
03-08 21:35:10.976: W/System.err(2712): java.io.IOException: [JSR82] connect: Connection is not created (failed or aborted).
03-08 21:35:10.976: W/System.err(2712):     at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:395)
03-08 21:35:10.976: W/System.err(2712):     at com.test.BluetoothConnection.connectBluetooth(BluetoothConnection.java:100)
03-08 21:35:10.977: W/System.err(2712):     at com.test.BluetoothCounter$1.run(BluetoothCounter.java:64)
03-08 21:35:10.977: W/System.err(2712):     at java.lang.Thread.run(Thread.java:856)
03-08 21:35:10.977: D/dalvikvm(2712): threadid=13: exiting
03-08 21:35:10.977: D/dalvikvm(2712): threadid=13: bye!

我的蓝牙初始化代码:

   public boolean connectBluetooth() throws Exception, Exception{
        BT = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(MacAddress);
        m = BT.getClass().getMethod("createInsecureRfcommSocket", new Class[] { int.class });
        mBluetoothAdapter.enable();
        sock = (BluetoothSocket) m.invoke(BT, 1);
        Log.d("Bluetooth", "++++ Connecting to " + MacAddress);
        sock.connect();
        Log.d("Bluetooth", "++++ Connected");
        connected = true;
        in = sock.getInputStream();
        return true;
    }

感谢您的帮助!

【问题讨论】:

    标签: android bluetooth


    【解决方案1】:

    很可能您要求的是 Acer Iconia B1 中没有的功能。

    平板电脑要么与蓝牙 2.1 不兼容(第一个答案 here),要么根本无法连接到“A2DP 立体声耳机”以外的设备(最后一个帖子 here)。

    【讨论】:

      猜你喜欢
      • 2014-05-22
      • 1970-01-01
      • 2012-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-03
      • 1970-01-01
      相关资源
      最近更新 更多