title: onBatchScanResults is not called in Android BLE
body: <p>I am now using the new BLE api in android developing.</p>
  
  <p>Basic idea is using bluetooth scanning result to inflate the recyclerview(list);</p>
  
  <p>I followed the <a href="https://developer.android.com/guide/topics/connectivity/bluetooth-le.html" rel="noreferrer">BLE guide</a> on google developer</p>
  
  <p>Now I have two problem:
  1. <code>onBatchScanResults</code> listener is never triggered, but<code>onScanResult</code> works well, is that because the scanner only sense 1 sensor nearby?</p>
  
  <ol start="2">
  <li>my BLE scanner is much slower compared with other applications.</li>
  </ol>
  
  <p>The following is the two core functions' code snippet.</p>
  
  <pre><code>private void scanBLE(boolean enable) {
      final BluetoothLeScanner mBluetoothLeScanner = mBluetoothAdapter.getBluetoothLeScanner();
      if (enable) {
          mScanning = true;
          mBluetoothLeScanner.startScan(mScanCallback);        
      } else {
          if (mScanning) {
              mScanning = false;
              mBluetoothLeScanner.stopScan(mScanCallback);
          }
      }
  
      Log.i(TAG, "now the scanning state is" + mScanning);
  }
  
  // Device scan callback.
  private ScanCallback mScanCallback =
          new ScanCallback() {
      public void onScanResult(int callbackType, android.bluetooth.le.ScanResult result) {
          addBeaconTolist(result, beaconsList);
          mAdapter.notifyDataSetChanged();
      };
  
      public void onScanFailed(int errorCode) {
          Log.i(TAG, "error code is:" + errorCode);
      };
  
      public void onBatchScanResults(java.util.List&lt;android.bluetooth.le.ScanResult&gt; results) {
          Log.i(TAG, "event linstener is called!!!!");
          Log.i(TAG, "batch result are:" + results);
          beaconsList.clear();
          for (int i = 0; i &lt; results.size(); i++) {
              ScanResult result = results.get(i);
              addBeaconTolist(result, beaconsList);
          }
          mAdapter.notifyDataSetChanged();
      };
  
  };
  </code></pre>
  
  <p>in MainFragment is like following:</p>
  
  <pre><code>    beaconsList = new ArrayList&lt;BeaconsInfo&gt;();
  
      mAdapter = new BeaconsAdapter(beaconsList);
      mRecyclerView.setAdapter(mAdapter);
  
      scannBLE(true);
  </code></pre>