ব্যবহারকারীর বর্তমান পরিবেশ সম্পর্কে তথ্য পেতে আপনি Snapshot API ব্যবহার করতে পারেন। Snapshot API-এর মাধ্যমে, আপনি বিভিন্ন ধরনের কনটেক্সট সিগন্যাল অ্যাক্সেস করতে পারবেন:
- ব্যবহারকারীর অ্যাক্টিভিটি শনাক্ত করা হয়েছে, যেমন তিনি যখন হাঁটছেন বা গাড়ি চালাচ্ছেন।
- আপনার রেজিস্টার করা আশেপাশের বিকন।
- হেডফোনের অবস্থা, প্লাগ-ইন করা আছে কিনা।
- লোকেশন, যার মধ্যে অক্ষাংশ ও দ্রাঘিমাংশ অন্তর্ভুক্ত।
সিস্টেম এইসব ভ্যালু ক্যাশে করে যাতে সেগুলি দ্রুত ফিরিয়ে আনা যায়। কোনও ডেটা না থাকলে, নতুন স্টেট ভ্যালু দেখানোর জন্য সেন্সিং ও ইনফারেন্স পারফর্ম করা হয়। Awareness API, পাবলিক API আছে এমন কনটেক্সট টাইপের জন্য আগে থেকে থাকা ডেটা টাইপ ফিরিয়ে দেয়।
প্রতিটি প্রসঙ্গ সিগন্যালে একটি সংশ্লিষ্ট Snapshot API পদ্ধতি আছে। যেমন, বর্তমানে শনাক্ত করা অ্যাক্টিভিটি পেতে, আপনি
getDetectedActivity() কল করেন,
DetectedActivityResponse পেতে SuccessListener ব্যবহার করেন,
তারপর getActivityRecognitionResult() কল করে
ActivityRecognitionResult রিটার্ন করেন
যেখান থেকে আপনি আসল অনুরোধের ডেটা পেতে পারেন।
লেটেস্ট শনাক্ত করা অ্যাক্টিভিটি কীভাবে পাবেন তা নিম্নলিখিত উদাহরণ থেকে দেখুন:
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
}
})
অনুরোধ করা ডেটা দিয়ে আপনি কী করতে পারবেন সেই সম্পর্কে আরও তথ্য পেতে, স্ন্যাপশট ডেটা পান দেখুন।