Начать

Прежде чем начать

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

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

Прежде чем использовать 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 считаются опасными системными разрешениями , помимо добавления их в свой манифест, вы должны запросить эти разрешения во время выполнения, как описано в разделе «Запрос разрешений» .

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