Przegląd interfejsu API aplikacji Snapshot

Aby uzyskać informacje o bieżącym środowisku użytkownika, możesz użyć interfejsu Snapshot API. Za pomocą interfejsu Snapshot API możesz uzyskać dostęp do różnych sygnałów kontekstowych:

  • wykrywana aktywność użytkownika, np. chodzenie lub jazda samochodem;
  • zarejestrowane w pobliżu beacony;
  • Stan słuchawek (podłączone lub nie).
  • Lokalizacja, która obejmuje szerokość i długość geograficzną.

System przechowuje te wartości w pamięci podręcznej, aby można je było szybko zwrócić. Jeśli nie ma danych, przeprowadzane są operacje wykrywania i uogólniania, aby zwrócić aktualne wartości stanu. Interfejs Awareness API zwraca istniejący typ danych dla typów kontekstu, które mają publiczny interfejs API.

Każdy sygnał kontekstowy ma odpowiadającą mu metodę interfejsu Snapshot API. Na przykład, aby uzyskać bieżącą wykrytą aktywność, wywołujesz funkcję getDetectedActivity(), używasz funkcji SuccessListener, aby uzyskać wartość DetectedActivityResponse, a następnie wywołujesz funkcję getActivityRecognitionResult(), aby zwrócić wartość ActivityRecognitionResult, z której możesz uzyskać rzeczywiste dane żądania.

Poniższy przykład pokazuje, jak uzyskać ostatnią wykrytą aktywność:

        Awareness.getSnapshotClient(this).getDetectedActivity()
            .addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
                @Override
                public void onSuccess(DetectedActivityResponse dar) {
                    ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
                }
            })

Więcej informacji o tym, co można zrobić z danymi z żądania, znajdziesz w artykule Pobieranie danych ze zrzutu.