title: the differences between createRfcommSocketToServiceRecord and createRfcommSocket
body: <p>What are the differences between these two ways below connecting to a bluetooth Device:</p>
  
  <p>1)</p>
  
  <pre><code>UUID uuid = UUID.fromString(Values.SPP_UUID); //Standard SerialPortService ID
  mmSocket = mmDevice.createRfcommSocketToServiceRecord(uuid); 
  </code></pre>
  
  <p>2)</p>
  
  <pre><code>Method m = mmDevice.getClass().getMethod("createRfcommSocket", new Class[] {int.class});
  mmSocket = (BluetoothSocket) m.invoke(mmDevice, 1);
  </code></pre>
  
  <p>I find the first way cannot work all the time, sometimes it will work, but after I close the bluetooth device, it won't work again. The second way is always work well. I know it is just open the channel one to communicate with bluetooth, but I do not know how it can do that to connect to a bluetooth device without using uuid?</p>