title: Bluetooth LE Scan fails in the background - permissions
body: <p>The following code works great on my Nexus 9 running Android 5.1.1 (Build LMY48M), but won't work on a Nexus 9 running Android 6.0 (Build MPA44l)</p>
  
  <pre><code>List&lt;ScanFilter&gt; filters = new ArrayList&lt;ScanFilter&gt;();
  ScanSettings settings = (new ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)).build();
  ScanFilter.Builder builder = new ScanFilter.Builder();
  builder.setManufacturerData((int) 0x0118, new byte[]{(byte) 0xbe, (byte) 0xac}, new byte[]{(byte) 0xff, (byte)0xff});
  ScanFilter scanFilter = builder.build();
  filters.add(scanFilter);
  mBluetoothLeScanner.startScan(filters, settings, new ScanCallback() {
    ...
  });
  </code></pre>
  
  <p>On Android 5.x, the above code yields a callback when a manufacturer advertisement matching the scan filter is seen.  (See example Logcat output below.)  On the Nexus 9 with MPA44l, no callbacks are received.  If you comment out the scan filter, callbacks are received successfully on the Nexus 9.</p>
  
  <pre><code>09-22 00:07:28.050    1748-1796/org.altbeacon.beaconreference D/BluetoothLeScanner﹕ onScanResult() - ScanResult{mDevice=00:07:80:03:89:8C, mScanRecord=ScanRecord [mAdvertiseFlags=6, mServiceUuids=null, mManufacturerSpecificData={280=[-66, -84, 47, 35, 68, 84, -49, 109, 74, 15, -83, -14, -12, -111, 27, -87, -1, -90, 0, 1, 0, 1, -66, 0]}, mServiceData={}, mTxPowerLevel=-2147483648, mDeviceName=null], mRssi=-64, mTimestampNanos=61272522487278}
  </code></pre>
  
  <p>Has anybody seen ScanFilters work on Android M?</p>