I guess this is kind of tricky. The device i'm trying to connect is a GP-GC021 made by Sure electronics, the documentation is really weak. In the documentation, it's a slave device. So that would mean it acts has a server listening for connection, and my android would be the client ... ?
I can't use connect() without having a socket initialized, and using the listenRfcomm is for server apps, and mine is a client, so creatRfcomm is the right method to call...no? On Mar 18, 2:57 pm, moneytoo <m...@seznam.cz> wrote: > createRfcommSocketToServiceRecord() is used for creating server > socket, you can only call connect() on client socket. > > What mode does the device use you are trying to connect to? > > Please be aware that these unofficial API for 1.x doesn't work in > server mode. > > On Mar 18, 5:00 pm, Gui <gui.ouel...@gmail.com> wrote: > > > Hi, I currently run android 1.5 on a HTC magic. I'm trying to > > communicate from my phone to a bluetooth device that supports SPP. I > > can't seem to be able to connect to the device. I have tryed two ways > > to connect: > > 1- via the official 2.0 API using the backport-android to make it work > > on android 1.5 > > 2- via the unofficial bluetooth api 0.3 > > > Both method give me an error around the same connection process. > > > With API 2.0, I can discover devices and pair with them. Then i create > > a socket which seems to work, but when I use the .connect() method, I > > get this error in CatLog: IOException Unable to start Service > > Discovery. This is related to doSdp() in public class > > BluetoothSocket. > > > Searching the web, it seems this error is related to a wrong UUID ... > > but I am using the SPP UUID properly. > > > So, I thought the problem could be backport android, so I tried with > > the unofficial API from Gerdavax > > (http://code.google.com/p/android-bluetooth/ > > ) > > > To connect to a device with this API you first create a socket, then > > you connect using the .openSocket( port number) method. The weird > > thing is, if I try with a new port, it connects, if I try a second > > time, it wont work, unless I change the port. I get a similar related > > error of SDP. > > > Here is my code for API 2.0, but im pretty sure its ok. > > > public class RegulVoile extends Activity { > > > private BluetoothAdapter adapteurGen= null; > > private BluetoothDevice moduleDistant = null; > > public String adressTrouver = null; > > private BluetoothSocket socketBt = null; > > private static final UUID MON_UUID = > > UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"); > > /** Called when the activity is first created. */ > > @Override > > public void onCreate(Bundle savedInstanceState) { > > super.onCreate(savedInstanceState); > > setContentView(R.layout.main); > > > //final TextView modeText= > > (TextView)this.findViewById(R.id.txt_state); > > //final TextView infoText= > > (TextView)this.findViewById(R.id.txt_name); > > Button connectionBt = > > (Button)this.findViewById(R.id.btn_connexion); > > > adapteurGen = BluetoothAdapter.getDefaultAdapter(); > > > connectionBt.setOnClickListener(new OnClickListener(){ > > public void onClick(View v){ > > > //make SURE there is not a discovery going on. > > adapteurGen.cancelDiscovery(); > > > moduleDistant = adapteurGen.getRemoteDevice("00:1D: > > 43:00:D1:0D"); > > > try{ > > > socketBt = > > moduleDistant.createRfcommSocketToServiceRecord(MON_UUID); > > > } catch (IOException e) { > > > } > > > //try the connect > > try { > > > socketBt.connect(); > > } catch (IOException e) { > > try { > > e.printStackTrace(); > > socketBt.close(); > > } catch (IOException e2) { > > } > > } > > > } > > }); > > > } > > > @Override > > protected void onStop() { > > try { > > socketBt.close(); > > } catch (IOException e1) { > > > e1.printStackTrace(); > > } > > super.onStop(); > > } > > > @Override > > protected void onDestroy() { > > try { > > socketBt.close(); > > } catch (IOException e1) { > > > e1.printStackTrace(); > > } > > super.onDestroy(); > > } > > } > > -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en To unsubscribe from this group, send email to android-developers+unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.