उपयोगकर्ता के मौजूदा एनवायरमेंट के बारे में जानकारी पाने के लिए, Snapshot API का इस्तेमाल किया जा सकता है. स्नैपशॉट एपीआई की मदद से, कई तरह के संदर्भ सिग्नल को ऐक्सेस किया जा सकता है:
- उपयोगकर्ता की गतिविधि का पता लगाया गया, जैसे कि पैदल या गाड़ी चलाते समय.
- आस-पास के बीकन जिन्हें आपने रजिस्टर किया है.
- हेडफ़ोन की स्थिति, प्लग-इन है या नहीं.
- जगह, जिसमें अक्षांश और देशांतर शामिल हैं.
सिस्टम इन वैल्यू को कैश मेमोरी में सेव करता है, ताकि उन्हें तेज़ी से दिखाया जा सके. अगर डेटा उपलब्ध नहीं है, तो नई स्थिति का डेटा दिखाने के लिए सेंसिंग और अनुमान का इस्तेमाल किया जाता है. अवेयरनेस एपीआई, सार्वजनिक एपीआई वाले कॉन्टेक्स्ट टाइप का मौजूदा डेटा दिखाता है.
हर संदर्भ सिग्नल के लिए एक संबंधित स्नैपशॉट एपीआई का तरीका होता है. उदाहरण के लिए, मौजूदा गतिविधि का पता लगाने के लिए, getDetectedActivity()
को कॉल करके
DetectedActivityResponse
पाने के लिए SuccessListener
का इस्तेमाल करें. इसके बाद, ActivityRecognitionResult
पर कॉल करने के लिए getActivityRecognitionResult()
को कॉल करें, ताकि आपको असल अनुरोध का डेटा मिल सके.
नीचे कुछ उदाहरण दिए गए हैं, जिनसे हाल ही में खोजी गई गतिविधि के बारे में पता चलता है:
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
}
})
इस बारे में ज़्यादा जानने के लिए कि अनुरोध किए जाने वाले डेटा के साथ क्या किया जा सकता है, स्नैपशॉट डेटा पाएं देखें.