title: Android Bluetooth LE Masked UUID Filter
body: <p>I am playing around with an experimental <code>Bluetooth LE</code> program for Android and iOS, and right now I am having some trouble on the Android side filtering beacon advertisements sent out by the iOS side. Android has a feature to filter advertisements by UUID with a mask (I need this as I am trying to get UUIDs beginning with a specific value) but I can't get it to work. Here's what I am trying:</p>
  
  <pre><code>private void freshen() {
      // kill current scanner
      if (mLEScanner != null)
          mLEScanner.stopScan(mScanCallback);
  
      // set new one to be a match scanner
      ScanSettings settings = new ScanSettings.Builder()
              .setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY)
              .build();
  
      List&lt;ScanFilter&gt; filters = new ArrayList&lt;&gt;();
  
      // create data uuid starting with the value 1
      ParcelUuid data = ParcelUuid.fromString("10000000-0000-0000-0000-000000000000");
      // create a mask to ensure only that value is searched
      ParcelUuid mask = ParcelUuid.fromString("10000000-0000-0000-0000-000000000000");
  
      // build the filter
      ScanFilter.Builder builder = new ScanFilter.Builder();
      builder.setServiceUuid(data, mask);
      ScanFilter filter = builder.build();
  
      // add the filter to the scanner
      filters.add(filter);
      mLEScanner.startScan(filters, settings, mScanCallback);
  }
  </code></pre>
  
  <p>It is producing zero results. Even if I set all mask values to 0 (which is the number for ignore) it still produces zero results. When I remove the filter, plenty of results beginning with 1 appear. Is this broken in the current version of Android?</p>