API Nearby Messages может быть потенциально энергоёмким из-за использования Bluetooth и других ресурсов устройства для обнаружения и связи с устройствами поблизости. Чтобы пользователи могли полностью контролировать процесс, при первом обращении к API Nearby Messages отображается диалоговое окно с предложением. Пользователь должен дать согласие на использование службой Nearby необходимых ресурсов устройства.
Только BLE
Вы можете избежать появления диалогового окна согласия, если вашему приложению предоставлено разрешение ACCESS_FINE_LOCATION и оно использует BLE только во время публикации и подписки.
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
mMessagesClient = Nearby.getMessagesClient(this, new MessagesOptions.Builder()
.setPermissions(NearbyPermissions.BLE)
.build());
}