אתם יכולים להשתמש ב-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();
}
})
מידע נוסף על הפעולות שאפשר לבצע עם נתוני הבקשה זמין במאמר בנושא קבלת נתוני תמונת מצב.