Una volta che l'utente ha concesso tutte le autorizzazioni necessarie, l'app può iniziare a fai pubblicità e scopri per trovare dispositivi nelle vicinanze.
Per prima cosa, scegli un Strategy
per il tuo caso d'uso.
Il Strategy
che selezioni determina la topologia di connessione per la tua app (una
inserzionista a N scopritori o M inserzionisti a N scopritori).
Sui dispositivi che verranno utilizzati per la pubblicità, chiama il numero startAdvertising()
con l'indirizzo
Strategy
e un parametro serviceId
che identifica la tua app.
Sui dispositivi per rilevare gli inserzionisti nelle vicinanze, chiama startDiscovery()
con
gli stessi Strategy
e serviceId
.
Il valore serviceId
deve identificare in modo univoco la tua app. Come best practice, utilizza
Il nome del pacchetto dell'app (ad es. com.google.example.myapp
).
L'esempio seguente illustra come fare pubblicità:
private void startAdvertising() { AdvertisingOptions advertisingOptions = new AdvertisingOptions.Builder().setStrategy(STRATEGY).build(); Nearby.getConnectionsClient(context) .startAdvertising( getLocalUserName(), SERVICE_ID, connectionLifecycleCallback, advertisingOptions) .addOnSuccessListener( (Void unused) -> { // We're advertising! }) .addOnFailureListener( (Exception e) -> { // We were unable to start advertising. }); }
Il parametro ConnectionLifecycleCallback
è il callback che verrà richiamato
quando i rilevatori richiedono di connettersi all'inserzionista. Consulta Gestisci
Connessioni per i dettagli su
sulla definizione di questo callback.
L'esempio seguente mostra come scoprire:
private void startDiscovery() { DiscoveryOptions discoveryOptions = new DiscoveryOptions.Builder().setStrategy(STRATEGY).build(); Nearby.getConnectionsClient(context) .startDiscovery(SERVICE_ID, endpointDiscoveryCallback, discoveryOptions) .addOnSuccessListener( (Void unused) -> { // We're discovering! }) .addOnFailureListener( (Exception e) -> { // We're unable to start discovering. }); }
Il parametro EndpointDiscoveryCallback
è il callback che verrà richiamato
quando gli inserzionisti nelle vicinanze vengono scoperti o persi. Consulta Gestisci
Connessioni per i dettagli su
sulla definizione di questo callback.
Chiama stopAdvertising()
quando non hai più bisogno di fare pubblicità e
stopDiscovery()
quando non hai più bisogno di scoprirli.