Health Connect-এর ডেটা টাইপগুলি Record
এর উপশ্রেণীর বস্তুগুলিতে সংরক্ষণ করা হয়।
প্রতিটি ডেটা টাইপের জন্য, এমন কিছু সম্পর্কিত ক্ষেত্র রয়েছে যা হয় জেনেরিক যেমন time
এবং zoneOffset
, অথবা নির্দিষ্ট যেমন title
, count
, এবং percentage
। কিছু ক্ষেত্র মৌলিক প্রকার ব্যবহার করে—যেমন long, double, অথবা string—যখন অন্যগুলি জটিল প্রকার ব্যবহার করে যেমন enumerations এবং classes যেমন Instant
এবং ZoneOffset
। এই ক্ষেত্রগুলির বৈশিষ্ট্যগুলি প্রয়োজনীয় বা ঐচ্ছিক হতে পারে। কিছু বৈশিষ্ট্য কেবল পঠনযোগ্য, এবং কিছু বৈশিষ্ট্য একটি নির্দিষ্ট পরিসরের মানের সাথে সংযুক্ত থাকে।
উপলব্ধ ডেটা টাইপ এবং তাদের ক্ষেত্রগুলির সম্পূর্ণ তালিকার জন্য, Jetpack এর ক্লাসগুলি দেখুন।
মেটাডেটা বৈশিষ্ট্য
Health Connect API-এর ডেটাতে নিম্নলিখিত তালিকায় বর্ণিত মেটাডেটা বৈশিষ্ট্যগুলিও অন্তর্ভুক্ত রয়েছে:
- হেলথ কানেক্ট আইডি: তৈরির সময় প্রতিটি ডেটা পয়েন্টে একটি অনন্য শনাক্তকারী (UID) বরাদ্দ করা হয়। এটি স্ট্যান্ডার্ড রিড এবং রাইট অপারেশনের জন্য কার্যকর। আরও বিস্তারিত জানার জন্য হেলথ কানেক্ট আইডি দেখুন।
- শেষবার পরিবর্তিত সময়: এটি একটি রেকর্ডের সর্বশেষ আপডেটের টাইমস্ট্যাম্প চিহ্নিত করে। এটি রেকর্ডের প্রথম তৈরিতে বা প্রতিটি আপডেটে স্বয়ংক্রিয়ভাবে তৈরি হয়।
- ডেটা অরিজিন: হেলথ কানেক্ট অ্যাপটি যেখান থেকে ডেটা এসেছে সে সম্পর্কে তথ্য সংরক্ষণ করে। এতে সেই অরিজিনের প্যাকেজের নাম থাকে, যা তৈরির সাথে সাথে স্বয়ংক্রিয়ভাবে যোগ হয়ে যায়।
- ডিভাইস: হেলথ কানেক্ট সেই ডিভাইস সম্পর্কে তথ্য সংরক্ষণ করে যেখান থেকে ডেটা এসেছে। এতে সেই ডিভাইসের প্রস্তুতকারক এবং মডেল থাকে, যা আপনি ম্যানুয়ালি মান সরবরাহ করেন।
- ক্লায়েন্ট আইডি: হেলথ কানেক্ট ক্লায়েন্ট আইডি প্রদান করে যাতে ক্লায়েন্ট অ্যাপগুলি তাদের নিজস্ব আইডি ব্যবহার করে ডেটা উল্লেখ করতে পারে, যা দ্বন্দ্ব সমাধানে সহায়তা করে এবং সিঙ্কিংকে সহজ করে তোলে। এটি রেকর্ডে ম্যানুয়ালি সরবরাহ করা হয়।
- ক্লায়েন্ট রেকর্ড সংস্করণ: ক্লায়েন্ট আইডির সাথে, হেলথ কানেক্ট ডেটা সিঙ্কিংয়ের সময় পরিবর্তনগুলি ট্র্যাক করতে সহায়তা করার জন্য সংস্করণ সরবরাহ করে। এটি ম্যানুয়ালি রেকর্ডে সরবরাহ করা হয়।
- রেকর্ডিং পদ্ধতি: হেলথ কানেক্ট আপনাকে বুঝতে সাহায্য করে কিভাবে ডেটা রেকর্ড করা হয়। এই পদ্ধতিগুলির মধ্যে রয়েছে অ্যাপগুলি নিষ্ক্রিয়ভাবে (স্বয়ংক্রিয়ভাবে) ডেটা রেকর্ড করে এবং ব্যবহারকারীরা সক্রিয়ভাবে বা ম্যানুয়ালি ডেটা রেকর্ড করে।
হেলথ কানেক্ট আইডি
হেলথ কানেক্ট নতুন প্রবেশ করানো ডেটা অবজেক্টগুলিতে অনন্য শনাক্তকারী (UID) বরাদ্দ করে, যা ডেটা অবজেক্টগুলিকে সনাক্ত করে এবং অন্যদের থেকে তাদের আলাদা করে। হেলথ কানেক্ট আইডিগুলি পঠন বা লেখার অনুরোধে কার্যকর। হেলথ কানেক্ট আইডিগুলি ক্লায়েন্ট আইডিগুলির সাথে অভিন্ন নয়। একটি ক্লায়েন্ট অ্যাপ ক্লায়েন্ট আইডি বরাদ্দ করে, যেখানে হেলথ কানেক্ট একচেটিয়াভাবে হেলথ কানেক্ট আইডি বরাদ্দ করে।
হেলথ কানেক্ট আইডি নিয়ে কাজ করার সময় নিম্নলিখিত বিষয়গুলি মনে রাখবেন :
- সেশনগুলির একটি মাত্র হেলথ কানেক্ট আইডি থাকে, কিন্তু সেশনের মধ্যে থাকা ডেটার নিজস্ব হেলথ কানেক্ট আইডি থাকে।
- হেলথ কানেক্ট আইডিগুলি টাইমস্ট্যাম্পের সাথে সংযুক্ত বা সম্পর্কিত নয়।
- কিছু ব্যবহারের ক্ষেত্রে কর্মপ্রবাহের সময় একটি নির্দিষ্ট Health Connect ID সংরক্ষণের প্রয়োজন হতে পারে। উদাহরণস্বরূপ, ব্যবহারকারীর লগ করা ডেটা এন্ট্রি পুনরুদ্ধার এবং দেখানোর জন্য একটি নির্দিষ্ট ID প্রয়োজন।
স্বাস্থ্য সংযোগে সময়
হেলথ কানেক্টে লেখা সমস্ত ডেটাতে জোন অফসেট তথ্য নির্দিষ্ট করতে হবে। জোন অফসেট নির্দিষ্ট করার ফলে অ্যাপগুলি সিভিল টাইমে ডেটা উপস্থাপন করার জন্য ডেটা পড়তে সক্ষম হয়। সিভিল টাইম হল সেই সময় যা স্থানীয় এবং ব্যবহারকারীর জন্য প্রাসঙ্গিক, কিন্তু অগত্যা কোঅর্ডিনেটেড ইউনিভার্সাল টাইম (UTC) তে নয়।
বিরল পরিস্থিতিতে, জোন অফসেট উপলব্ধ নাও হতে পারে। যখন এটি অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) তে ঘটে, তখন হেলথ কানেক্ট ডিভাইসের সিস্টেম ডিফল্ট টাইম জোনের উপর ভিত্তি করে জোন অফসেট সেট করে। অ্যান্ড্রয়েড ১৩ এবং তার নিচের সংস্করণগুলিতে (এপিআই লেভেল ৩৩ এবং তার নিচের), কোনও জোন অফসেট তথ্য নির্দিষ্ট না করেই হেলথ কানেক্টে লেখা সম্ভব, যা যখনই সম্ভব এড়ানো উচিত।
সময় এবং অঞ্চল সেটিং
ডেটা লেখার সময় জোন অফসেট তথ্য নির্দিষ্ট করলে হেলথ কানেক্টে ডেটা পড়ার সময় টাইম জোন তথ্য পাওয়া যায়। তবে, কিছু পরিস্থিতিতে, যেমন জোন অফসেট প্রদান করা না হলে, এটি তা করতে ব্যর্থ হতে পারে। আপনার অ্যাপটিকে উভয় ধরণের ডেটা মোকাবেলা করার জন্য প্রস্তুত থাকতে হবে, এমনভাবে যা আপনার নির্দিষ্ট পরিস্থিতির জন্য যুক্তিসঙ্গত।