Per iniziare

Questo documento spiega come iniziare a sviluppare con l'API Awareness su Android. L'API Awareness fa parte di Google Play Services.

Per utilizzare l'API Awareness, devi disporre di un Account Google. Se hai già un account, non devi fare altro. Ti consigliamo anche di disporre di un Account Google separato per i test.

Prima di iniziare

Ottenere una chiave API

Se non hai ancora abilitato l'API Awareness e ottenuto una chiave API di Google, segui i passaggi descritti in Registrazione e chiavi API per farlo.

Configura la tua app

  1. Nel file build.gradle a livello di progetto, includi il repository Maven di Google nelle sezioni buildscript e allprojects:

    buildscript {
        repositories {
            google()
        }
    }
    
    allprojects {
        repositories {
            google()
        }
    }
    
  2. Aggiungi le dipendenze per l'API Awareness al file Gradle a livello di app del modulo, che di solito è app/build.gradle:

    dependencies {
      implementation 'com.google.android.gms:play-services-awareness:19.1.0'
    }
    
  3. Aggiungi la chiave API Awareness al file AndroidManifest.xml della tua app. Per farlo, aggiungi un tag <meta-data> con android:name="com.google.android.awareness.API_KEY". Per android:value, inserisci la tua chiave API Awareness, racchiusa tra virgolette.

    <manifest>
        <application>
            <meta-data
                android:name="com.google.android.awareness.API_KEY"
                android:value="API_KEY"/>
        </application>
    </manifest>
  4. Aggiungi le autorizzazioni necessarie al file AndroidManifest.xml della tua app. Le autorizzazioni richieste variano a seconda dei metodi API e dei tipi di recinzione utilizzati dalla tua app.

Esempio di chiamata

La seguente chiamata di esempio a getDetectedActivity() mostra come utilizzare il modello di servizi Google Play senza connessione con l'API Awareness:

    // Each type of contextual information in the snapshot API has a corresponding "get" method.
    // For instance, this is how to get the user's current Activity.
    Awareness.getSnapshotClient(this).getDetectedActivity()
        .addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
            @Override
            public void onSuccess(DetectedActivityResponse dar) {
                ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
                // getMostProbableActivity() is good enough for basic Activity detection.
                // To work within a threshold of confidence,
                // use ActivityRecognitionResult.getProbableActivities() to get a list of
                // potential current activities, and check the confidence of each one.
                DetectedActivity probableActivity = arr.getMostProbableActivity();

                int confidence = probableActivity.getConfidence();
                String activityStr = probableActivity.toString();
                mLogFragment.getLogView().println("Activity: " + activityStr
                    + ", Confidence: " + confidence + "/100");
            }
        })

Passaggi successivi

Scopri di più sulle diverse API all'interno dell'API Awareness: