Los gehts

In diesem Dokument wird beschrieben, wie Sie mit der Awareness API auf Android-Geräten entwickeln. Die Awareness API ist Teil der Google Play-Dienste.

Für die Verwendung der Awareness API benötigen Sie ein Google-Konto. Wenn Sie bereits ein solches Konto haben, sind Sie schon startklar. Für Testzwecke könnte ein separates Google-Konto sinnvoll sein.

Hinweis

API-Schlüssel abrufen

Wenn Sie die Awareness API noch nicht aktiviert und keinen Google API-Schlüssel erhalten haben, folgen Sie der Anleitung unter Registrierung und API-Schlüssel.

Eigene App konfigurieren

  1. Fügen Sie in der Datei build.gradle auf Projektebene das Maven-Repository von Google in die Abschnitte buildscript und allprojects ein:

    buildscript {
        repositories {
            google()
        }
    }
    
    allprojects {
        repositories {
            google()
        }
    }
    
  2. Fügen Sie der Gradle-Datei Ihres Moduls auf App-Ebene die Abhängigkeiten für die Awareness API hinzu. Diese Datei heißt in der Regel app/build.gradle:

    dependencies {
      implementation 'com.google.android.gms:play-services-awareness:19.1.0'
    }
    
  3. Fügen Sie der Datei AndroidManifest.xml Ihrer App Ihren Awareness API-Schlüssel hinzu. Fügen Sie dazu ein <meta-data>-Tag mit android:name="com.google.android.awareness.API_KEY" hinzu. Geben Sie neben android:value Ihren eigenen Awareness API-Schlüssel ein, umgeben von Anführungszeichen.

    <manifest>
        <application>
            <meta-data
                android:name="com.google.android.awareness.API_KEY"
                android:value="API_KEY"/>
        </application>
    </manifest>
  4. Fügen Sie der Datei AndroidManifest.xml Ihrer App die erforderlichen Berechtigungen hinzu. Die erforderlichen Berechtigungen variieren je nach den API-Methoden und Zauntypen, die in Ihrer App verwendet werden.

Beispielanruf

Im folgenden Beispielaufruf von getDetectedActivity() wird gezeigt, wie das verbindungslose Google Play-Dienstmodell mit der Awareness API verwendet wird:

    // 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");
            }
        })

Nächste Schritte

Weitere Informationen zu den verschiedenen APIs der Awareness API: