Hai qualche Consiglio/Critica/Suggerimento relativo al forum? Diccelo qui.Ti entusiasma l'idea di un forum italiano di Android? Vorresti partecipare in qualche modo?Scrivi un Tutorial o fai richiesta di ammissione nello Staff
public void initialize() { connections = new Vector<Connection>(); BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter(); BluetoothServerSocket tmp = null; try { tmp = adapter.listenUsingRfcommWithServiceRecord(BTServer.BTCHAT, BTServer.MYUUID); } catch (IOException e) { Log.e("BTServer", "listenUsingRfcommWithServiceRecord fail!"); } serverSocket = tmp; Log.e("BTServer", "It's created"); }
#### ERROR : __listen_prot_rfcomm: failed with reason 1#### è la linea del LogCat
11-09 14:12:59.640: E/AndroidRuntime(31433): java.lang.RuntimeException: ...
Da quel poco che posso vedere mi viene in mente una sola idea: adapter è valido quando vai ad usarlo nel blocco try-catch? Prova a loggarne il valore.E una raccomandazione generale: solitamente Log.e è per loggare gli errori e non gli eventi, anche per migliorare leggibilità sarebbe meglio usare Log.e solo per evidenziare errori. Ovviamente non cambia lo stato di questo problema.
nel onDestroy() viene chiuso tutto.
Prima di metterlo nello onStop(), ho fatto in modo che il Service parte con il onCreate() della activity principale e che si chiuda con il onDestroy() della stessa activity. Ora sembra funzionare, non mi lancia più l'eccezione.