title: Android read characteristics issue
body: <p>i'm using the code from official android developers website and find difficulties in reading charactaristics</p>
  
  <p>i use this code for creating the gatt characteristic read call in DeviceControlActivity class at displayGattServices function when iterating all the uuid's:</p>
  
  <pre><code>mBluetoothLeService.readCharacteristic(new BluetoothGattCharacteristic(
                      UUID.fromString(uuid),
                      BluetoothGattCharacteristic.PERMISSION_READ,
                      BluetoothGattCharacteristic.PROPERTY_READ));
  </code></pre>
  
  <p>the readCharacteristic function int BluetoothLeService calss is:</p>
  
  <pre><code>public void readCharacteristic(BluetoothGattCharacteristic characteristic) {
      if (mBluetoothAdapter == null || mBluetoothGatt == null) {
          Log.w(TAG, "BluetoothAdapter not initialized");
          return;
      }
      mBluetoothGatt.readCharacteristic(characteristic);
  }
  </code></pre>
  
  <p>and the callback also in BluetoothLeService class is:</p>
  
  <pre><code>@Override
      public void onCharacteristicRead(BluetoothGatt gatt,
                                       BluetoothGattCharacteristic characteristic,
                                       int status) {
  
          if (status == BluetoothGatt.GATT_SUCCESS) {
              broadcastUpdate(ACTION_DATA_AVAILABLE, characteristic);
          }
  </code></pre>
  
  <p>i put a break point at the callback and i never get stopped there... 
  could it be the permission or property? something else?...
  does somebody have a working example of it?</p>