جلسات راهی هستند که کاربران میتوانند به سرعت و به راحتی فهرستی از تمام فعالیتهای اصلی انجام شده خود را مشاهده کنند. آنها در صفحه ژورنال برنامه Google Fit ظاهر میشوند. به عنوان مثال، یک جلسه تنفس، پیادهروی، دویدن یا خواب شبانه، هر کدام نمونههایی از یک جلسه هستند.
جلسات، مجموعه دادههای یک دوره زمانی خاص را که در طول یک فعالیت جمعآوری شدهاند، گروهبندی میکنند. برای مثال، اگر کاربری زمان شروع و پایان یک دویدن ۳ کیلومتری را ردیابی کند، میتوان یک جلسه ایجاد کرد و تمام دادههای تناسب اندام موجود در آن دوره زمانی (مانند تعداد قدمها، سرعت، مسافت) را با آن جلسه مرتبط کرد.
خود جلسات شامل جزئیاتی در مورد فعالیت نیستند. این در مجموعه دادهها موجود است. جلسات این ویژگیها را دارند:
- یک نام توصیفی و دوستانه (برای مثال، "دویدن صبحگاهی")
- یک توضیح
- یک شناسه منحصر به فرد
- نوع فعالیتی که ثبت میکند (مثلاً دویدن)
مزایای استفاده از جلسات
- مفید برای کاربران : جلسات به شما کمک میکنند تا دادههای فعالیت و تمرینات را به روشی معنادار برای کاربران سازماندهی کنید. آنها میتوانند تمام فعالیتهای روزانه خود را در صفحه Journal در برنامه Google Fit مشاهده کنند.
- تجربه کاربری پایدار : اگر برنامه یا دستگاه همراه شما امکان ردیابی فعالیت را فراهم میکند (جایی که کاربران میتوانند یک فعالیت را شروع و متوقف کنند)، داشتن جلسات برای این تمرینات به کاربران این امکان را میدهد که فعالیت خود را در هر دو برنامه مشاهده کنند.
- دادههای کاملتر : گوگل فیت همچنین دادههای منابع مختلف را برای تکمیل و غنیسازی اطلاعات جلسه شما ادغام میکند. این به کاربران تصویر کاملتری از فعالیتشان میدهد.
- از پلتفرم Google Fit استفاده کنید : اگر کاربران شما فعالیت خود را پیگیری نمیکنند، یا برنامه شما از ردیابی پشتیبانی نمیکند، همچنان میتوانید جلسات را در Google Fit بخوانید. میتوانید دادههای دقیق یا تجمیعشده را از فروشگاه تناسب اندام جستجو کنید و جلسات موجود را پیدا کنید، بدون اینکه نیازی به پیادهسازی طرحواره و فضای ذخیرهسازی خود داشته باشید.
- افزایش تعامل کاربر : میتوانید جلسات موجود و برنامههایی که آنها را ایجاد کردهاند را به کاربران خود نشان دهید. تعامل با سایر برنامههای تناسب اندام از این طریق میتواند تعامل کاربر شما را افزایش دهد.
دریافت مجوز کاربر برای جلسات
اگر میخواهید جلسات را بخوانید یا بنویسید، برنامه شما باید مجوز کاربر را دریافت کند. دسترسی به جلسات از همان حوزههای مجوز مانند انواع داده استفاده میکند که باید به شرح زیر درخواست دهید:
اندروید
با استفاده از متدهای مناسب از FitnessOptions ، مشخص کنید که برنامه شما به چه نوع جلسهای نیاز دارد تا به آن دسترسی داشته باشد. به عنوان مثال، برای خواندن جلسات مربوط به دویدن، میتوانید موارد زیر را انتخاب کنید:
val fitnessOptions = FitnessOptions.builder()
.accessActivitySessions(FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
.addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
.build()
این مثال مشخص میکند که برنامه شما میخواهد به فرادادههای جلسه فعالیت دسترسی داشته باشد، و همچنین انواع دادههایی را که میخواهد در آن جلسات بخواند مشخص میکند؛ انواع دادههای ضربان قلب، سرعت و مکان در این مثال استفاده شدهاند.
استراحت
درخواست محدودهها به شرح زیر است:
- جلسات با انواع فعالیتهای خواب:
-
https://www.googleapis.com/auth/fitness.sleep.read -
https://www.googleapis.com/auth/fitness.sleep.write
-
- تمام جلسات دیگر:
-
https://www.googleapis.com/auth/fitness.activity.read -
https://www.googleapis.com/auth/fitness.activity.write
-
استفاده از جلسات
اندروید
شما میتوانید از Sessions API برای موارد زیر استفاده کنید :
- ایجاد جلسات در زمان واقعی
- جلسات را در فروشگاه تناسب اندام قرار دهید
- بخشهای فعالیت را برای پشتیبانی از مکثها در طول تمرین وارد کنید
- خواندن جلسات و مجموعه دادههای مرتبط با آنها
- برنامه دیگری را اجرا کنید تا اطلاعات مربوط به جلسهای که ایجاد کرده است را نشان دهد.
- دریافت یک intent هنگامی که برنامه دیگری یک session را شروع می کند
استراحت
شما میتوانید از Sessions API برای موارد زیر استفاده کنید :
- ایجاد جلسات در زمان واقعی
- جلسات را در فروشگاه تناسب اندام قرار دهید
- بخشهای فعالیت را برای پشتیبانی از مکثها در طول تمرین وارد کنید
- خواندن جلسات و مجموعه دادههای مرتبط با آنها
نحوه تعامل مجموعه دادهها و بخشها با جلسات
در گوگل فیت:
- یک مجموعه داده، مجموعهای از نقاط داده از یک منبع داده خاص در یک دوره زمانی خاص را نشان میدهد. مجموعه دادهها را میتوان به تنهایی وارد کرد. اما اگر در حال ایجاد یک جلسه (session) هستید، ایجاد جلسه و مجموعه دادههای آن با هم آسانتر خواهد بود.
- یک بخش، مجموعه دادههای یک جلسه را بر اساس فعالیت دقیقی که کاربر در آن جلسه انجام میداد، گروهبندی میکند. برای مثال، اگر کاربر یک دویدن ۳۰ دقیقهای (جلسه) را ثبت کند اما در طول این مدت کمی پیادهروی کند، میتوان این را به بخشهایی تقسیم کرد. یک بخش برای دویدن، سپس استراحت برای پیادهروی و سپس دوباره دویدن وجود خواهد داشت.

شکل ۱ یک بازه زمانی را در فروشگاه تناسب اندام نشان میدهد که طی آن برنامههای A، B و C برخی از مجموعه دادهها و جلسات را وارد کردهاند:
- برنامه A مجموعه دادههای A1 و A2 را به همراه جلسه 1 و A3 را مستقل از هر جلسهای وارد کرد.
- برنامه B مجموعه دادههای B1 و B2 را به همراه جلسه ۲ وارد کرد.
- برنامه C مجموعه داده C1 را مستقل از هر جلسهای وارد کرد.
هنگام خواندن دادههای جلسه از فروشگاه تناسب اندام ، تمام دادههای تناسب اندام که در بازه زمانی یک جلسه قرار میگیرند، به طور خودکار با آن جلسه مرتبط میشوند، حتی اگر دادهها را پس از ایجاد جلسه وارد کنید، یا جلسهای را پس از ردیابی غیرفعال دادهها ایجاد کنید. به عنوان مثال، یک پرس و جو برای دادههای تناسب اندام از جلسه ۱ نتیجه زیر را برمیگرداند:
- مجموعه داده A1
- مجموعه داده A2
- بخشی از مجموعه داده A3 بین t1 و t2
- بخشی از مجموعه داده C1 بین t1 و t2
میتوانید تشخیص دهید که هر جلسه و مجموعه داده توسط کدام برنامه وارد شده است.
ایجاد جلسات
جلسات را میتوان به چند روش مختلف ایجاد کرد:
- برنامه شما میتواند به طور فعال یک جلسه را در هر دو مورد ایجاد کند.
- در زمان واقعی، زمانی که کاربر به طور فعال فعالیتی را در دستگاه ردیابی میکند (فقط اندروید)، یا
- با وارد کردن دستی آن.
- وقتی کاربر به صورت دستی یک تمرین یا فعالیت را در برنامه Google Fit اضافه میکند.
چه زمانی یک جلسه ایجاد کنیم
آیا دادههای خواب را اضافه میکنید؟
- بله - یک جلسه ایجاد کنید و آن را به صورت دستی در فروشگاه تناسب اندام وارد کنید. به عنوان مثال، یک جلسه خواب وارد کنید. دلیل این امر این است که کاربرانی که از برنامهها یا دستگاههای ردیابی خواب استفاده میکنند، برای شروع و توقف فعالیت خواب خود با دستگاهها تعامل نخواهند داشت (این فعالیت به صورت غیرفعال ردیابی میشود).
- خیر - آیا برنامه شما به کاربران اجازه میدهد فعالیتها را شروع و متوقف کنند؟
- خیر - جلسه ایجاد نکنید. فقط مجموعه دادهها را از برنامه خود اضافه کنید.
- بله - با API اندروید، در صورت پیگیری فعالیت کاربران، یک جلسه به صورت بلادرنگ یا به صورت دستی ایجاد کنید. با API REST، یک جلسه ایجاد کنید و آن را به صورت دستی در فروشگاه تناسب اندام وارد کنید .
- آیا برنامه شما میتواند تشخیص دهد که کاربر چه زمانی فعالیتهای مختلفی را در سطح دقیقتری انجام میدهد (مثلاً پیادهروی در مقابل دویدن)؟
- بله - بخشها را اضافه کنید.
- خیر - فقط مجموعه دادهها را اضافه کنید . فعلاً بخشها را نادیده بگیرید و بگذارید Google Fit به صورت غیرفعال این موارد را ایجاد کند.
جلسات کتابخوانی
برنامه شما میتواند جلسات را به چند روش بخواند:
- به دنبال یک جلسه خاص باشید که توسط آن ایجاد/وارد شده است
- نام یا
- شناسه
- تمام جلسات ایجاد شده/وارد شده را بر اساس دوره زمانی جستجو کنید
- تمام جلسات موجود ایجاد شده توسط همه برنامهها (از جمله Google Fit) را بر اساس دوره زمانی جستجو کنید
بیاموزید که کدام منابع یک جلسه ایجاد کردهاند
شما میتوانید به کاربران خود نشان دهید که هر یک از جلساتشان توسط کدام برنامه یا دستگاه ایجاد شده است. هر جلسه دارای یک منبع داده مرتبط است که حاوی اطلاعاتی در مورد برنامه یا دستگاهی است که دادهها را جمعآوری یا تبدیل کرده است.
اندروید
در حال حاضر فقط میتوانید نام بستهی یک جلسه (session) نوشته شده توسط یک کلاینت اندروید را دریافت کنید. برای دریافت نام بستهی برنامهای که یک جلسه ایجاد کرده است، از متد getAppPackageName استفاده کنید. میتوانید از این اطلاعات در برنامهی خود استفاده کنید تا به کاربران نشان دهید کدام برنامههای دیگر جلسات تناسب اندام را وارد کردهاند. میتوانید آیکون هر یک از این برنامهها را نمایش دهید تا به کاربران در شناسایی آنها کمک کنید.
شما همچنین میتوانید یک intent برای اجرای برنامههای دیگر برای نمایش جزئیات sessionهایی که ایجاد کردهاند، فعال کنید. برنامههای دیگر نیز میتوانند یک intent برای اجرای برنامه شما فعال کنند.
درباره یافتن منبعی که یک جلسه را ایجاد کرده است، بیشتر بدانید.
استراحت
برای دریافت نام بسته برنامه اندرویدی که جلسات را ایجاد کرده است، از ویژگی session.application استفاده کنید. برای جلساتی که با استفاده از REST API ایجاد شدهاند، از ویژگی session.name استفاده کنید. میتوانید از این اطلاعات در برنامه خود استفاده کنید تا به کاربران نشان دهید کدام برنامههای دیگر جلسات تناسب اندام را درج کردهاند. میتوانید آیکون هر یک از این برنامهها را نشان دهید تا به کاربران در شناسایی آنها کمک کنید.
درباره یافتن منبعی که یک جلسه را ایجاد کرده است، بیشتر بدانید.