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.

Reply via email to