Desidero inviare dati di stringa semplici come "a" da un dispositivo Android a un altro tramite bluetooth. Ho guardato il codice bluetooth di esempio in SDK Android ma è così complesso per me. Non riesco a capire come posso inviare solo dati specifici quando premo un pulsante. Come posso risolvere questo problema?Codice bluetooth di esempio per Android per inviare una semplice stringa via bluetooth
risposta
private OutputStream outputStream;
private InputStream inStream;
private void init() throws IOException {
BluetoothAdapter blueAdapter = BluetoothAdapter.getDefaultAdapter();
if (blueAdapter != null) {
if (blueAdapter.isEnabled()) {
Set<BluetoothDevice> bondedDevices = blueAdapter.getBondedDevices();
if(bondedDevices.size() > 0) {
Object[] devices = (Object []) bondedDevices.toArray();
BluetoothDevice device = (BluetoothDevice) devices[position];
ParcelUuid[] uuids = device.getUuids();
BluetoothSocket socket = device.createRfcommSocketToServiceRecord(uuids[0].getUuid());
socket.connect();
outputStream = socket.getOutputStream();
inStream = socket.getInputStream();
}
Log.e("error", "No appropriate paired devices.");
} else {
Log.e("error", "Bluetooth is disabled.");
}
}
}
public void write(String s) throws IOException {
outputStream.write(s.getBytes());
}
public void run() {
final int BUFFER_SIZE = 1024;
byte[] buffer = new byte[BUFFER_SIZE];
int bytes = 0;
int b = BUFFER_SIZE;
while (true) {
try {
bytes = inStream.read(buffer, bytes, BUFFER_SIZE - bytes);
} catch (IOException e) {
e.printStackTrace();
}
}
}
Grazie per la vostra relpy. Oltre a questo, come posso ricevere questo messaggio da un altro dispositivo? – user3374956
@ user3374956 in generale è necessario leggere i dati da 'InputStream'. Come ricevere i dati dipende dal mittente. Ho aggiornato il codice. – eleven
permisssions richiesto sono? – Prasad
È possibile fare riferimento [qui] anche (https://stackoverflow.com/questions/13450406/how-to-receive-serial-data-using-android-bluetooth) –