Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Estrutura Inicial
Vamos adicionar uma nova classe chamada RemoteBluetoothServer com
um nome de pacote qualquer. Neste caso, o pacote utilizado ser o endereo
oficial do autor.
package com.luugiathuy.apps.remotebluetooth;
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;
/** Constructor */
public WaitThread() {
}
@Override
public void run() {
waitForConnection();
}
StreamConnectionNotifier notifier;
StreamConnection connection = null;
}
// waiting for connection
while(true) {
try {
System.out.println("waiting for
connection...");
connection =
notifier.acceptAndOpen();
package com.luugiathuy.apps.remotebluetooth;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import java.io.InputStream;
import javax.microedition.io.StreamConnection;
public ProcessConnectionThread(StreamConnection
connection)
{
mConnection = connection;
}
@Override
public void run() {
try {
// prepare to receive data
InputStream inputStream =
mConnection.openInputStream();
while (true) {
int command = inputStream.read();
if (command == EXIT_CMD)
{
System.out.println("finish
process");
break;
}
processCommand(command);
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Process the command from client
* @param command the command code
*/
private void processCommand(int command) {
try {
Robot robot = new Robot();
switch (command) {
case KEY_RIGHT:
robot.keyPress(KeyEvent.VK_RIGHT);
System.out.println("Right");
break;
case KEY_LEFT:
robot.keyPress(KeyEvent.VK_LEFT);
System.out.println("Left");
break;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}