Я сделал сервер Bluetooth с bluecove после этого учебника: http://luugiathuy.com/2011/02/android-java-bluetooth/ Я хочу добавить всплывающее окно подтверждения с JOptionPane
перед подключением, но я не знаю, как это сделать. Вы можете мне помочь? Вот код:Показать диалоговое окно подтверждения, чтобы принять соединение, bluecove server java
import com.intel.bluetooth.BluetoothStack;
import javax.bluetooth.DiscoveryAgent;
import javax.bluetooth.LocalDevice;
import javax.bluetooth.UUID;
import javax.microedition.io.Connector;
import javax.microedition.io.StreamConnection;
import javax.microedition.io.StreamConnectionNotifier;
import javax.swing.JOptionPane;
public class WaitThread implements Runnable {
private GestorPrincipal gestor = GestorPrincipal.getInstancia();
/** * Constructor */
public WaitThread() { }
@Override
public void run() {
waitForConnection();
}
/** * Waiting for connection from devices */
private void waitForConnection() {
// retrieve the local Bluetooth device object
LocalDevice local = null;
StreamConnectionNotifier notifier; StreamConnection connection = null;
// setup the server to listen for connection
try {
local = LocalDevice.getLocalDevice();
local.setDiscoverable(DiscoveryAgent.GIAC);
UUID uuid = new UUID(80087355);
// "04c6093b-0000-1000-8000-00805f9b34fb"
String url = "btspp://localhost:" + uuid.toString() + ";name=RemoteBluetooth";
notifier = (StreamConnectionNotifier) Connector.open(url);
}
catch (Exception e) {
e.printStackTrace();
return;
}
// waiting for connection
while (true) {
try {
System.out.println("Esperando la conexion...");
gestor.agregarTexto("Esperando la conexion..");
connection = notifier.acceptAndOpen();
Thread processThread = new Thread(new ProcessConnectionThread(connection));
processThread.start();
}
catch (Exception e) {
e.printStackTrace(); return;
}
}
}
}`
PD: извините за мой английский, я из ARG.
Спасибо, но это не моя проблема. Я знаю, как делать диалоги. Моя проблема в том, что 'notifier.acceptAndOpen();' находится в цикле while, и диалог отображается все время. – Martin
Вы хотите отобразить диалоговое окно для пользователя, который говорит что? Когда появляется диалоговое окно? И если доступно несколько устройств Bluetooth, должен ли пользователь запрашивать каждое соединение? Если пользователь принимает одно соединение, если оно выходит из цикла? –
Я хочу отобразить диалоговое окно с надписью «Устройство xxxx пытается связаться с вами, вы хотите ?, да, нет». Он должен появиться, когда телефон попытается подключиться к ПК из моего приложения, только если никто не подключен. Мой код работает, но когда телефон хочет подключиться, сервер принимает его в одиночку. – Martin