Fluoride — это реализация Bluetooth-подсистемы, используемая в рамках проекта Android Open Source Project (AOSP) и на многих встраиваемых Android-устройствах. Она развивалась как дальнейшее развитие ранее известного стека BlueDroid и предназначена для управления низкоуровневой обработкой Bluetooth-соединений, служб профилей и взаимодействия с аппаратными адаптерами. Fluoride сочетает в себе компоненты для управления контроллером (HCI), реализации протоколов уровня ядра и обеспечения интерфейсов для системных сервисов и приложений.
Исторически Fluoride появился как преемник или реорганизация исходного стека в AOSP, когда разработчики стремились к более модульной, поддерживаемой и переносимой реализации. В ряде версий Android рядом с Fluoride развивались и альтернативные реализации стека, такие как Gabeldorsche для некоторых областей Android 13 и выше, однако Fluoride остаётся основным стеком в проекте AOSP и в переносимых вариантах системы. В открытой документации и исходных репозиториях описаны его архитектурные слои, механизмы взаимодействия с драйверами и способы интеграции с системными сервисами Android.
- Управление HCI: взаимодействие с Bluetooth-контроллером через интерфейс HCI, обработка команд и событий.
 - Поддержка профилей: реализация классических и низкоэнергетических профилей (например, A2DP, AVRCP, GATT/BLE и др.).
 - Модульность: разделение на отдельные компоненты для удобства тестирования, отладки и замены частей стека.
 - Совместимость с AOSP: интеграция с системными сервисами Android и предоставление API для фреймворка и приложений.
 - Энергопотребление: механизмы оптимизации работы радиомодуля и управления энергопотреблением в мобильных условиях.
 - Безопасность и приватность: реализация механизмов аутентификации, шифрования и политики доступа для соединений.
 - Поддержка BLE: полная поддержка Bluetooth Low Energy, включая серверные и клиентские роли GATT.
 - Диагностика и логирование: средства для трассировки, логирования событий и отладки взаимодействия с контроллером.