ব্যবহারকারীদের তাদের ঘুমের অভ্যাস বুঝতে সাহায্য করুন

গুগল প্লে পরিষেবা দ্বারা চালিত একটি লাইব্রেরি, স্লিপ এপিআই, অ্যাপগুলিকে ব্যবহারকারী কখন ঘুমাতে যান এবং কখন জেগে ওঠেন তা নির্ধারণ করতে দেয়।

ব্যবহারকারীর কাছ থেকে অনুমতি পাওয়ার পর, Google Play পরিষেবাগুলি আশেপাশের উজ্জ্বলতা, ডিভাইসের নড়াচড়া এবং আরও অনেক কিছু সম্পর্কিত তথ্য সংগ্রহ করে ব্যবহারকারী কখন ঘুমিয়ে পড়ে এবং কখন জেগে ওঠে তা অনুমান করার জন্য। আপনার অ্যাপ এই তথ্যের আপডেটগুলিতে সাবস্ক্রাইব করতে পারে। এইভাবে, আপনার অ্যাপ ব্যবহারকারীদের তাদের ঘুমের অভ্যাস সম্পর্কে অবহিত করতে পারে এবং ব্যবহারকারীদের তাদের ঘুমের স্বাস্থ্যবিধি এবং সামগ্রিক সুস্থতা উন্নত করতে উৎসাহিত করতে সাহায্য করতে পারে।

শুরু করার আগে

আপনার অ্যাপ প্রস্তুত করতে, নিম্নলিখিত বিভাগগুলির ধাপগুলি সম্পূর্ণ করুন।

অ্যাপের পূর্বশর্ত

আপনার অ্যাপের বিল্ড ফাইলে নিম্নলিখিত মানগুলি ব্যবহার করা হয়েছে কিনা তা নিশ্চিত করুন:

  • 29 বা তার বেশি minSdkVersion
  • 29 বা তার বেশি ভার্সনের একটি compileSdkVersion
.

আপনার অ্যাপ কনফিগার করুন

আপনার প্রোজেক্ট-লেভেল build.gradle ফাইলে, আপনার buildscript এবং allprojects উভয় বিভাগেই Google এর Maven সংগ্রহস্থল এবং Maven কেন্দ্রীয় সংগ্রহস্থল অন্তর্ভুক্ত করুন:

 buildscript {
    repositories {
        google()
        mavenCentral()
    }
} 

allprojects { repositories { google() mavenCentral() } }

আপনার মডিউলের Gradle বিল্ড ফাইলে Sleep API-এর জন্য Google Play পরিষেবা নির্ভরতা যোগ করুন, যা সাধারণত app/build.gradle হয়:

 dependencies {
    implementation 'com.google.android.gms:play-services-location:24.0.0'
} 

আপনার AndroidManifest.xmlACTIVITY_RECOGNITION অনুমতি যোগ করুন। android:name=”android.permission.ACTIVITY_RECOGNITION” দিয়ে ট্যাগ করুন।

 <manifest>
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
<application>...</application>
</manifest>

ঘুমের আপডেটের জন্য নিবন্ধন করুন

আপডেটের জন্য নিবন্ধন করার আগে, প্রথমে পরীক্ষা করে নিন যে ব্যবহারকারী ACTIVITY_RECOGNITION অনুমতি দিয়েছেন কিনা। অনুমতি সম্পর্কে আরও তথ্যের জন্য, "অ্যাপ অনুমতির অনুরোধ করুন" দেখুন।

অনুমতি মঞ্জুর হয়ে গেলে, ব্যবহারকারীর ঘুমের আচরণের আপডেটের জন্য, যার মধ্যে ঘুমের অংশ এবং ঘুমের ইভেন্টের শ্রেণীবিভাগের ফলাফল অন্তর্ভুক্ত, requestSleepSegmentUpdates() এ কল করে নিবন্ধন করুন।

 val task = ActivityRecognition.getClient(context)
    .requestSleepSegmentUpdates(
        pendingIntent,
        SleepSegmentRequest.getDefaultSleepSegmentRequest())
    .addOnSuccessListener {
        viewModel.updateSubscribedToSleepData(true)
        Log.d(TAG, "Successfully subscribed to sleep data.")
    }
    .addOnFailureListener { exception ->
        Log.d(TAG, "Exception when subscribing to sleep data: $exception")
    }

Sleep API সম্পর্কে আরও জানুন

আপনার অ্যাপ প্রতিদিনের ঘুমের সেগমেন্ট আপডেট ইভেন্ট থেকে ঘুমের সময় সম্পর্কে তথ্য পুনরুদ্ধার করতে পারে।

প্রতিটি স্লিপ সেগমেন্ট ইভেন্টে এপিআই ঘুম শনাক্ত করেছে নাকি ঘুম শনাক্ত করতে পারে সে সম্পর্কে তথ্য রয়েছে। উপলভ্য সেন্সর ডেটার উপর ভিত্তি করে সেগমেন্ট ইভেন্টে সেই সময়গুলিও অন্তর্ভুক্ত থাকে যখন ব্যবহারকারী সম্ভবত ঘুমিয়ে পড়ে এবং জেগে ওঠে।

আপনার অ্যাপ ঘুমের শ্রেণীবিভাগের ইভেন্টগুলি সম্পর্কে নিয়মিত আপডেটও পেতে পারে।

প্রতিটি ঘুমের শ্রেণিবিন্যাস ইভেন্ট একটি টাইমস্ট্যাম্প প্রদান করে, সাথে মানগুলি যা ডিভাইসের গতি, পরিবেশের উজ্জ্বলতা এবং সেই সময়ে ব্যবহারকারীর ঘুমিয়ে থাকার সম্ভাবনাকে উপস্থাপন করে। উদাহরণস্বরূপ, যদি একটি টাইমস্ট্যাম্প এবং পরবর্তী টাইমস্ট্যাম্পের মধ্যে ঘুমের আত্মবিশ্বাস উল্লেখযোগ্যভাবে বৃদ্ধি পায় এবং যদি একই 2টি টাইমস্ট্যাম্পের মধ্যে আশেপাশের উজ্জ্বলতা উল্লেখযোগ্যভাবে কমে যায়, তাহলে সম্ভবত ব্যবহারকারী সম্প্রতি ঘুমিয়ে পড়েছেন।

ব্যবহারকারী কখন ঘুমিয়ে পড়ে এবং জেগে ওঠে তা আরও আত্মবিশ্বাসের সাথে নির্ধারণ করতে আপনার অ্যাপটি অতিরিক্ত ব্যবহারকারী-প্রদত্ত ডেটার সাথে এই তথ্যগুলিকে একত্রিত করতে পারে।

SleepSampleKotlin নমুনা অ্যাপটি Sleep API ব্যবহার করে এন্ড-টু-এন্ড ওয়ার্কফ্লো প্রদর্শন করে।