Я разрабатываю программу J2ME с eclipse / WTK 2.5.2 и испытываю проблемы с подключением двух эмуляторов с помощью Bluetooth. Один сервер и один клиент работают на двух разных эмуляторах.
Проблема в том, что клиентская программа не может обнаружить устройство Bluetooth. Вот коды сервера и клиента:
public Server()
{
try
{
LocalDevice local = LocalDevice.getLocalDevice();
local.setDiscoverable(DiscoveryAgent.GIAC);
server = (StreamConnectionNotifier)
Connector.open("btspp://localhost:"
+ UUID_STRING + ";name=" + SERVICE_NAME);
Util.Log("EchoServer() Server connector open!");
}
catch (Exception e)
{}
}
после вызова Connector.open, я получаю следующее предупреждение в консоли, которое, я считаю, связано:
Предупреждение: незарегистрированное устройство: не указано
и код клиента, который ищет устройства:
public SearchForDevices(String uuid, String nm)
{
UUIDStr = uuid;
srchServiceName = nm;
try
{
LocalDevice local = LocalDevice.getLocalDevice();
agent = local.getDiscoveryAgent();
deviceList = new Vector();
agent.startInquiry(DiscoveryAgent.GIAC, this); // non-blocking
}
catch (Exception e)
{}
}
система никогда не вызывает deviceDiscovered, но вызывает queryCompleted () с параметром INQUIRY_COMPLETED, поэтому я полагаю, что клиентская программа работает нормально.
Bluetooth включен в настройках эмулятора ..