Prima di iniziare
Prima di iniziare a scrivere codice utilizzando l'API Nearby Connections:
- Installa l'SDK Google Play Services.
- Scarica ed esamina gli esempi di codice dell'API Nearby Connections.
Richiedi autorizzazioni
Prima di utilizzare Nearby Connections, la tua app deve richiedere le autorizzazioni appropriate. Aggiungi le seguenti autorizzazioni al file 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" /> <uses-permission android:minSdkVersion="37" android:name="android.permission.ACCESS_LOCAL_NETWORK" /> <!-- Optional: only required for FILE payloads --> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Poiché
ACCESS_FINE_LOCATION,
BLUETOOTH_ADVERTISE,
BLUETOOTH_CONNECT,
BLUETOOTH_SCAN,
ACCESS_LOCAL_NETWORK
(obbligatoria a partire da Android 17 per le app che utilizzano come target l'SDK 37+ utilizzando WIFI_LAN),
e
READ_EXTERNAL_STORAGE
sono considerate autorizzazioni di sistema pericolose,
oltre ad aggiungerle al manifest, devi richiedere queste autorizzazioni
in fase di runtime, come descritto in Richiesta di
autorizzazioni.
Se l'utente non concede tutte le autorizzazioni richieste, l'API Nearby Connections non consentirà alla tua app di iniziare a pubblicizzare o scoprire.