I checked the source for this. Two separate reasons, both written down by the project:
1. Android rules, not bitchat's choice. The Android app's manifest asks for location with the comment "Location permission required for BLE scanning" (README says the same). Android's own docs: on Android 11 and ...