אתם יכולים להשתמש ב-Snapshot API כדי לקבל מידע על הסביבה הנוכחית של המשתמש. Snapshot API מאפשר לכם לגשת למגוון אותות הקשר:
- פעילות המשתמשים שזוהתה, למשל הליכה או נהיגה.
- משואות בסביבה שרשמתם.
- מצב האוזניות, אם הן מחוברות או לא.
- מיקום, כולל קו רוחב וקו אורך.
המערכת שומרת את הערכים האלה במטמון כדי שתוכל להחזיר אותם במהירות. אם אין נתונים, מתבצעות חישה והסקה כדי להחזיר ערכי מצב עדכניים. Awareness API מחזיר את סוג הנתונים הקיים עבור סוגי הקשר שיש להם API ציבורי.
לכל אות הקשר יש שיטה תואמת ב-Snapshot API. לדוגמה, כדי לקבל את הפעילות הנוכחית שזוהתה, מפעילים את getDetectedActivity(), משתמשים ב-SuccessListener כדי לקבל DetectedActivityResponse, ואז מפעילים את getActivityRecognitionResult() כדי להחזיר ActivityRecognitionResult שממנו אפשר לקבל את נתוני הבקשה בפועל.
בדוגמה הבאה אפשר לראות איך מקבלים את הפעילות האחרונה שזוהתה:
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
}
})
מידע נוסף על הפעולות שאפשר לבצע עם נתוני הבקשה זמין במאמר קבלת נתוני תמונת מצב.