Hallo,
I entwickle gerade ein programm, dass dateien über die bluetooth verbindung bekommt. Ich habe es ausprobiert indem ich eine datei vom meinem computer aus zum telefon senden wollte, leider wird die Verbindung über die standard form hergestellt und nicht über mein programm.
Mein code sieht so aus:
Mein UUID ist:Code:// The local server socket private final BluetoothServerSocket mServerSocket; public AcceptThread() { BluetoothServerSocket tmp = null; // Create a new listening server socket try { tmp = mAdapter.listenUsingRfcommWithServiceRecord(NAME_SDP, MY_UUID); } catch (IOException e) { Log.e(TAG, "could not create a Bluetooth server socket", e); } mServerSocket = tmp; } public void run() { if(D) Log.d(TAG, "Begin mAcceptThread " + this); setName("AcceptThread"); BluetoothSocket socket = null; //Listen to the server socket if not connected while (mState != STATE_CONNECTED) { try { socket = mServerSocket.accept(); } catch (IOException e) { Log.e(TAG, "socket accept failed", e); break; } // If a connection was accepted if (socket != null) { synchronized (BluetoothService.this) { switch(mState) { case STATE_LISTEN: case STATE_CONNECTING: // Start the connected thread connected(socket, socket.getRemoteDevice()); break; case STATE_NONE: case STATE_CONNECTED: // Terminate new socket. Already connected or not ready try { socket.close(); } catch(IOException e) { Log.e(TAG, "Could not close socket", e); } break; } } } } if (D) Log.i(TAG, "END mAcceptThread"); } public void cancel() { if (D) Log.d(TAG, "Socket cancel"); try { mServerSocket.close(); } catch (IOException e) { Log.e(TAG, "Close of server socket failed", e); } } }
private static final UUID MY_UUID = UUID.fromString("fa87c0d0-afac-11de-8a39-0800200c9a66");
Laut dokumentation sollte der SDP name keine rolle spielen.
Leider bekomme ich keine Verbindung durch diesen BluetoothServerSocket und deswegen blockiert das Programm im mServerSocket.accept()
Kann mir jemanden sagen was ich hier falsch mache ?









Automatisch generierter Sicherheitshinweis


