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