public void startAdvertising() { System.out.println("Start advertising"); if (ContextCompat.checkSelfPermission(activity, Manifest.permission.BLUETOOTH_ADMIN) != PackageManager.PERMISSION_GRANTED) { System.out.println(" doesn't have permission"); } else { System.out.println(" has permission"); advertiser = bluetoothAdapter.getBluetoothLeAdvertiser(); AdvertiseSettings.Builder settings = new AdvertiseSettings.Builder(); settings.setConnectable(true); settings.setAdvertiseMode(AdvertiseSettings.ADVERTISE_MODE_LOW_LATENCY); settings.setTxPowerLevel(AdvertiseSettings.ADVERTISE_TX_POWER_HIGH); settings.setTimeout(120000); AdvertiseData.Builder data = new AdvertiseData.Builder(); data.addServiceUuid(new ParcelUuid(UUID.fromString(B4UUID))); data.addServiceData( new ParcelUuid(UUID.fromString(B4UUID)), "a".getBytes(Charset.forName("UTF-8"))); data.setIncludeDeviceName(true); advertiseCallback = new AdvertiseBack(); advertiser.startAdvertising(settings.build(), data.build(), advertiseCallback); isAdvertising = true; } }