स्वास्थ्य सेवाएं, ExerciseEvents
के लिए सहायता देती हैं,
इससे कसरत के दौरान कोई गतिविधि होने पर आपके ऐप्लिकेशन को सूचना दी जाती है. साथ ही, इससे जुड़ा मेटाडेटा भी दिया जाता है.
डिपेंडेंसी जोड़ें
कसरत से जुड़े इवेंट का इस्तेमाल करने के लिए, आपके पास स्वास्थ्य सेवाओं के SDK टूल का सबसे नया वर्शन होना चाहिए.
Health Services पर डिपेंडेंसी जोड़ने के लिए, आपको Google Maven रिपॉज़िटरी जोड़ना होगा को भी शामिल किया जा सकता है. ज़्यादा जानकारी के लिए, यह देखें Google की Maven रिपॉज़िटरी.
इसके बाद, अपने मॉड्यूल-लेवल की build.gradle
फ़ाइल में, यह डिपेंडेंसी जोड़ें:
ग्रूवी
dependencies { implementation "androidx.health:health-services-client:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.health:health-services-client:1.1.0-alpha03") }
सुविधाएं देखें
हेल्थ सर्विस में अलग-अलग तरह की कसरतों और डेटा के लिए, सुविधाओं की जांच करें:
स्टार्टअप. इसके लिए
ExerciseEvents
खास तौर पर, ExerciseCapabilities
का अनुरोध करने के अलावा,
ExerciseTypeCapabilities.supportedExerciseEvents
का उपयोग करें
का इस्तेमाल करें.
यह पुष्टि करने के बाद कि कोई खास ExerciseEvent
काम करता है, उसके बाद,
आपको इनका इस्तेमाल करके, कसरत वाले इवेंट की क्षमताओं के बारे में भी क्वेरी करनी चाहिए
getExerciseEventCapabilityDetails
.
नीचे दिए गए उदाहरण में,
GOLF_SHOT_EVENT
का इस्तेमाल किया जा सकता है. इसके बाद, पुष्टि करें कि GOLF_SHOT_EVENT
स्विंग टाइप क्लासिफ़िकेशन के साथ काम करता है.
fun handleCapabilities(capabilities: ExerciseCapabilities) {
val golfCapabilities = capabilities.typeToCapabilities[ExerciseType.GOLF]
val golfShotEventSupported =
golfCapabilities
?.supportedExerciseEvents
?.contains(ExerciseEventType.GOLF_SHOT_EVENT)
val golfSwingTypeClassificationSupported =
golfCapabilities
?.getExerciseEventCapabilityDetails(ExerciseEventType.GOLF_SHOT_EVENT)
?.isSwingTypeClassificationSupported ?: false
}
किसी कसरत में, कसरत से जुड़े इवेंट का अनुरोध करना
व्यायाम शुरू करने और उसके हिस्से के रूप में किसी व्यायाम इवेंट का अनुरोध करने के लिए,
कसरत के लिए ExerciseConfig
का एलान करें
और exerciseEventType
के लिए फ़ील्ड जोड़ें.
यहां दिए गए उदाहरण में, GOLF
की कसरत के तहत GOLF_SHOT_EVENT
का अनुरोध किया गया है:
val config = ExerciseConfig(
exerciseType = ExerciseType.GOLF,
dataTypes = setOf(....),
// ...
exerciseEventTypes = setOf(ExerciseEventType.GOLF_SHOT_EVENT),
)
कसरत से जुड़े इवेंट के अपडेट पाने के लिए रजिस्टर करें
आपको मौजूदा इन्फ़्रास्ट्रक्चर के तहत ExerciseEvent
के अपडेट मिल सकते हैं
आपके ऐप्लिकेशन में कसरत के अपडेट पाने के लिए सेट किया गया है.
इस उदाहरण में बताया गया है कि GolfShotEvent
के अपडेट के लिए, सहायता केंद्र को कैसे शामिल किया जाएगा:
val callback = object : ExerciseUpdateCallback {
override fun onExerciseUpdateReceived(update: ExerciseUpdate) {
...
}
// [ExerciseEvent] intended to come through with low latency and out of
// band of onExerciseUpdateReceived()
override fun onExerciseEventReceived(event: ExerciseEvent) {
when (event) {
is GolfShotEvent -> {
if (it.swingType == GolfShotSwingType.PUTT) {
println("Putt detected!")
}
}
}
}
}