Начать

Прежде чем вы начнете

Прежде чем вы начнете писать код с помощью Nearby Connections API:

Запросить разрешения

Перед использованием Nearby Connections ваше приложение должно запросить соответствующие разрешения. Добавьте следующие разрешения в ваш AndroidManifest.xml :

<!-- Required for Nearby Connections -->
<uses-permission android:maxSdkVersion="31" android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:maxSdkVersion="31" android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:maxSdkVersion="30" android:name="android.permission.BLUETOOTH" />
<uses-permission android:maxSdkVersion="30" android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:maxSdkVersion="28" android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:minSdkVersion="29" android:maxSdkVersion="31" android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_ADVERTISE" />
<uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:minSdkVersion="32" android:name="android.permission.NEARBY_WIFI_DEVICES" />
<!-- Optional: only required for FILE payloads -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

Поскольку ACCESS_FINE_LOCATION , BLUETOOTH_ADVERTISE , BLUETOOTH_CONNECT , BLUETOOTH_SCAN и READ_EXTERNAL_STORAGE считаются опасными системными разрешениями , в дополнение к их добавлению в манифест вы должны запрашивать эти разрешения во время выполнения, как описано в разделе Запрос разрешений .

Если пользователь не предоставит все необходимые разрешения, Nearby Connections API не позволит вашему приложению начать рекламу или обнаружение.