Проблемы с настройкой ПК с Android 2.1 для мобильных устройств на примере чата Bluetooth

1

Я новичок в программировании Android-устройств. Я делаю школьный проект, который включает Android (Mini-Xperia pro с Android 2.1) и Bluetooth-связь с устройством. Я пытаюсь идти шаг за шагом, чтобы освободить все материалы программирования и узнать все, что я могу.

У меня есть адаптер Bluetooth для ПК, я работаю с Windows XP, поэтому я только подключаю его и уже установил.

Хорошо, я работаю над образцом Bluetooth Chat, который поставляется с SDK, и я уже изменил UUID на:

private static final UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb");

С моим мобильным телефоном я ввел настройки и сделал мое устройство сопряженным с моим ПК (он говорит, что он сопряжен, но без коннекта).

Но я не знаю, что я делаю неправильно, потому что я открываю приложение для чата Bluetooth на своем мобильном устройстве, пытаюсь подключиться к моему компьютеру, и он говорит "не удается подключить устройство".

После множества попыток он подключается для передачи с ПК на телефон:
А

в

И соединение потеряно (это занимает менее 2 секунд!)

Может ли кто-нибудь помочь мне, пожалуйста, скажите мне, что я делаю неправильно или что проблема?

Спасибо.

Теги:
bluetooth
uuid

2 ответа

2
Лучший ответ

Вам необходимо изменить код ConnectThread на следующее: Обратите внимание на код изменения, который создает сокет.

private class ConnectThread extends Thread {
    private final BluetoothSocket mmSocket;
    private final BluetoothDevice mmDevice;

    public ConnectThread(BluetoothDevice device) {
        mmDevice = device;
        BluetoothSocket tmp = null;

        Method m = null;
        try {
            m = device.getClass().getMethod("createRfcommSocket", 
                                                    new Class[] {int.class});
        } catch (SecurityException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
        try {
            tmp = (BluetoothSocket) m.invoke(device, 1);
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        mmSocket = tmp;
    }
  • 0
    Привет еще раз. Я немного запутался. У меня есть адаптер Bluetooth, который действительно очень маленький и очень дешевый, но я читал, что мне нужен Bluetooth, у которого уже есть последовательная связь, поэтому я не знаю, стоит ли его покупать или есть Второй способ заставить USB-адаптер работать как последовательный порт, может быть, использовать max232 или что-то в этом роде, вызывая Bluetooth, который мне нужен для моего окончательного приложения (bluesmirf, подключенный к карте андроида здесь, в Мексике, стоит около 990 песо (около 80 долларов) = S
  • 0
    Этот код сработал. 2 больших пальца для SKJ!
Показать ещё 1 комментарий
0

вам нужно запустить какое-то приложение, например, гипертерминал на стороне ПК через последовательный COM-порт Bluetooth, к которому подключается приложение Android.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню