इस सेक्शन में, Fit Android एपीआई और Fit REST API का इस्तेमाल करके, हर दिन चले गए कदमों की संख्या का मौजूदा डेटा दिखाया गया है.
Android
आपका ऐप्लिकेशन, हर दिन के मौजूदा कदमों की कुल संख्या पढ़ सकता है. इसके लिए, आपको HistoryClient.readDailyTotal
पर कॉल करना होगा, जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:
Fitness.getHistoryClient(this, GoogleSignIn.getAccountForExtension(this, fitnessOptions)) .readDailyTotal(DataType.TYPE_STEP_COUNT_DELTA) .addOnSuccessListener { result -> val totalSteps = result.dataPoints.firstOrNull()?.getValue(Field.FIELD_STEPS)?.asInt() ?: 0 // Do something with totalSteps } .addOnFailureListener { e -> Log.i(TAG, "There was a problem getting steps.", e) }
हर दिन के कुल जोड़ का हिसाब डिवाइस के मौजूदा टाइमज़ोन के हिसाब से मौजूदा दिन की आधी रात से लगाया जाता है.
फ़िट ऐप्लिकेशन के लिए तय हर दिन के कदमों की संख्या पाने के लिए, com.google.android.gms
ऐप्लिकेशन पैकेज का इस्तेमाल करके डेटा सोर्स बनाएं, जैसा कि इस उदाहरण में दिखाया गया है:
val startTime = LocalDate.now().atStartOfDay(ZoneId.systemDefault()) val endTime = LocalDateTime.now().atZone(ZoneId.systemDefault()) val datasource = DataSource.Builder() .setAppPackageName("com.google.android.gms") .setDataType(DataType.TYPE_STEP_COUNT_DELTA) .setType(DataSource.TYPE_DERIVED) .setStreamName("estimated_steps") .build() val request = DataReadRequest.Builder() .aggregate(datasource) .bucketByTime(1, TimeUnit.DAYS) .setTimeRange(startTime.toEpochSecond(), endTime.toEpochSecond(), TimeUnit.SECONDS) .build() Fitness.getHistoryClient(this, GoogleSignIn.getAccountForExtension(this, fitnessOptions)) .readData(request) .addOnSuccessListener { response -> val totalSteps = response.buckets .flatMap { it.dataSets } .flatMap { it.dataPoints } .sumBy { it.getValue(Field.FIELD_STEPS).asInt() } Log.i(TAG, "Total steps: $totalSteps") }
कुल डेटा सोर्स के साथ काम करने के बारे में ज़्यादा जानकारी के लिए, फ़िटनेस के इतिहास के साथ काम करना देखें.
आराम
आपका ऐप्लिकेशन, सभी डेटा सोर्स में हर दिन चले गए कदमों की कुल मौजूदा संख्या पढ़ सकता है. इसके लिए, यह POST
का अनुरोध करेगा और तय समयावधि के लिए, com.google.step_count.delta
डेटा टाइप के बारे में क्वेरी करेगा.
एचटीटीपी वाला तरीका
POST
यूआरएल का अनुरोध करें
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
अनुरोध का मुख्य हिस्सा
{
"aggregateBy": [{
"dataTypeName": "com.google.step_count.delta",
"dataSourceId": "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1438705622000,
"endTimeMillis": 1439310422000
}
कर्ल कमांड
curl \
-X POST \
-H "Content-Type: application/json;encoding=utf-8" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-d @aggregate.json \
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate