แพลตฟอร์ม Google Fit คือระบบนิเวศของ Google สำหรับการรวบรวม จัดเก็บ และวิเคราะห์ข้อมูลกิจกรรมทางกายและสุขภาพของผู้ใช้ Android ตาม Google Developers, 2025 แพลตฟอร์มนี้รวม Fitness API, Sensors API และ Sessions API เข้าด้วยกันเป็นสถาปัตยกรรมเดียวที่ซิงค์กับ Google Cloud และเข้าถึงได้ผ่านคำขอ REST โปรไฟล์สุขภาพแบบรวม ช่วยให้ผู้ใช้ควบคุมว่าแอปใดบ้างที่สามารถเข้าถึงข้อมูลฟิตเนสและสุขภาพของตนได้
ประเด็นสำคัญ
Google Fit คือแพลตฟอร์มการจัดการสุขภาพที่เปิดตัวโดย Google ในปี 2014 ในการประชุม I/O แพลตฟอร์มนี้มี API แบบรวมสำหรับอ่านและเขียนข้อมูลกิจกรรมทางกาย ช่วยให้แอปต่างๆ สามารถแลกเปลี่ยนข้อมูลผ่านคลังเก็บกลางในคลาวด์ของ Google
แตกต่างจากโซลูชันที่เป็นกรรมสิทธิ์ Google Fit ทำงานบน ระบบปฏิบัติการ Android และ iOS ผ่าน REST API ผู้ใช้สามารถเชื่อมต่อสายรัดฟิตเนส นาฬิกาอัจฉริยะ และแอปติดตามกิจกรรม และ Google Fit จะรวบรวมข้อมูลทั้งหมดเป็นโปรไฟล์สุขภาพเดียวใน Google Cloud
ตามข้อมูลของ Google I/O 2024 แพลตฟอร์มนี้ถูกใช้ใน กว่า 5000 แอป ทั่วโลก และจำนวนผู้ใช้ที่ใช้งานเกิน 100 ล้านคน แพลตฟอร์มนี้รวมเข้ากับ Wear OS และรองรับตัวติดตามฟิตเนสยอดนิยมทั้งหมดผ่านแอปของบุคคลที่สาม
สถาปัตยกรรมของ Google Fit สร้างขึ้นบน สามชั้น: SDK ไคลเอ็นต์, พื้นที่เก็บข้อมูลคลาวด์ Google Fitness Store และ REST API สำหรับการรวมเซิร์ฟเวอร์ SDK ไคลเอ็นต์พร้อมใช้งานสำหรับ Android (Kotlin, Java) และ iOS (Swift, Objective-C) และยังมีไคลเอ็นต์เว็บผ่าน JavaScript
ข้อมูลถูกจัดระเบียบเป็น แหล่งที่มา (DataSource) และจุดข้อมูล (DataPoint) แต่ละแหล่งที่มาแสดงถึงอุปกรณ์หรือแอป และแต่ละจุดข้อมูลแสดงถึงการวัดครั้งเดียวพร้อมประทับเวลา กลุ่มของจุดข้อมูลจะรวมกันเป็นเซสชัน — ช่วงเวลากิจกรรมต่อเนื่องที่มีประเภทและระยะเวลา
val fitnessClient = Fitness.getClient(activity, GoogleSignIn
.getAccountForExtension(activity, fitnessOptions))
val stepType = DataType.TYPE_STEP_COUNT_DELTA
val request = DataReadRequest.Builder()
.read(stepType)
.setTimeRange(
startTime, endTime, TimeUnit.MILLISECONDS
)
.build()
fitnessClient.readData(request)
.addOnSuccessListener { response ->
for (bucket in response.buckets) {
println(bucket.dataSets)
}
}
Google Fit ใช้โมเดลการซิงค์ผ่าน Google Cloud ที่รองรับทั้งโหมดออนไลน์และออฟไลน์ แอปบันทึกข้อมูลในเครื่อง และ Google Fit SDK จะซิงค์กับพื้นที่เก็บข้อมูลคลาวด์โดยอัตโนมัติเมื่อมีการเชื่อมต่ออินเทอร์เน็ต ข้อขัดแย้งจะถูกแก้ไขตามหลักการเขียนล่าสุด
ข้อมูลแต่ละประเภทมี รูปแบบมาตรฐาน: จำนวนก้าว — TYPE_STEP_COUNT_DELTA, แคลอรี่ — TYPE_CALORIES_EXPENDED, อัตราการเต้นของหัวใจ — TYPE_HEART_RATE_BPM, ระยะทาง — TYPE_DISTANCE_DELTA สำหรับประเภทที่กำหนดเอง คุณสามารถสร้าง DataType ที่กำหนดเองผ่านคอนโซล Google APIs ด้วยเนมสเปซที่ไม่ซ้ำกัน
แพลตฟอร์มรองรับสองโหมดการบันทึก: แอคทีฟ — แอปเรียก HistoryClient.insertData() อย่างชัดเจน และพาสซีฟ — ผ่าน RecordingClient ซึ่งสมัครรับการรวบรวมข้อมูลในพื้นหลัง โหมดพาสซีฟสะดวกสำหรับแอปฟิตเนส: ผู้ใช้เปิดแอปครั้งเดียว และ Google Fit จะรวบรวมจำนวนก้าว แคลอรี่ และระยะทางโดยอัตโนมัติเมื่อแอปถูกย่อให้เล็กสุด โดยไม่ต้องใช้ CPU อย่างต่อเนื่อง
ตามข้อมูลของ Google แพลตฟอร์มประมวลผล มากกว่า 2 พันล้าน จุดข้อมูลต่อวัน ความหน่วงในการซิงค์โดยเฉลี่ยคือ 5–10 วินาทีเมื่อเชื่อมต่อแบบแอคทีฟ และในโหมดพื้นหลัง การซิงค์จะเกิดขึ้นทุก 30 นาทีเพื่อประหยัดแบตเตอรี่
Google Fit ใช้ OAuth 2.0 สำหรับการอนุญาตด้วยขอบเขตการเข้าถึง fitness.activity.read, fitness.activity.write, fitness.body.read และ fitness.body.write แอปขอเฉพาะขอบเขตที่จำเป็น และผู้ใช้ยืนยันการเข้าถึงผ่านกล่องโต้ตอบ Google Sign-In มาตรฐานพร้อมการเลือกบัญชี
ผู้ใช้สามารถเพิกถอนการเข้าถึงได้ตลอดเวลาผ่าน Google Account Permissions หรือแอป Google Fit Google ห้ามอย่างเด็ดขาดในการแบ่งปันข้อมูลสุขภาพกับบุคคลที่สามโดยไม่ได้รับความยินยอมอย่างชัดแจ้ง รวมถึงการใช้ข้อมูลเพื่อวัตถุประสงค์ในการโฆษณาตามนโยบาย Restricted Scopes
Google Fit มี API หลักสามตัว: Fitness API สำหรับอ่านและเขียนข้อมูลประวัติ, Sensors API สำหรับสตรีมข้อมูลแบบเรียลไทม์จากเซ็นเซอร์ และ Sessions API สำหรับจัดการเซสชันกิจกรรม แต่ละ API พร้อมใช้งานทั้งผ่าน Android SDK และผ่านคำขอ REST
Fitness API คือ API หลักสำหรับทำงานกับข้อมูล รองรับการดำเนินการแบบแบตช์: เขียนจุดข้อมูลสูงสุด 1,000 จุดในการเรียกครั้งเดียว อ่านพร้อมกรองตามช่วงเวลา ชนิดข้อมูล และแหล่งที่มา สำหรับการรวมข้อมูล จะใช้ DataSet ที่จัดกลุ่มตามเมตริกที่เลือก
Sensors API ช่วยให้สมัครรับข้อมูลเซ็นเซอร์แบบเรียลไทม์ — จำนวนก้าว อัตราการเต้นของหัวใจ ความเร่ง ข้อมูลจะถูกรับผ่าน SensorEventListener ที่ความถี่ซึ่งกำหนดโดยชนิดของเซ็นเซอร์และการตั้งค่าแอป
นอกเหนือจาก API หลักสามตัว Google Fit ยังมี Recording API สำหรับการรวบรวมข้อมูลอัตโนมัติโดยไม่ต้องเปิดแอปทิ้งไว้ API นี้มีค่าโดยเฉพาะสำหรับ Wear OS: นาฬิกาอัจฉริยะสามารถรวบรวมข้อมูลอัตราการเต้นของหัวใจและกิจกรรม และแอปโทรศัพท์จะซิงค์กับนาฬิกาเมื่อเชื่อมต่อ Recording API ใช้ Google Fit Background Services ซึ่งปรับให้เหมาะสมสำหรับการใช้พลังงานน้อยที่สุด — แบตเตอรี่สูงสุด 2% ต่อวันกับการเก็บก้าวแบบพาสซีฟ
REST API ของ Google Fit พร้อมใช้งานที่ปลายทาง fitness.googleapis.com REST API ช่วยให้แอปพลิเคชันเซิร์ฟเวอร์อ่านและเขียนข้อมูลในนามของผู้ใช้หลังจากการอนุญาต OAuth ซึ่งมีประโยชน์สำหรับแผงควบคุมการวิเคราะห์เว็บ โปรแกรมฟิตเนสขององค์กร และระบบทางการแพทย์ที่ต้องการจัดเก็บข้อมูลสุขภาพของพนักงานหรือผู้ป่วยแบบรวมศูนย์
val recordingClient = Fitness
.getRecordingClient(activity, googleSignInAccount)
recordingClient.subscribe(DataType.TYPE_STEP_COUNT_DELTA)
.addOnSuccessListener {
println("การสมัครสมาชิกใช้งานอยู่")
}
// กำลังรับข้อมูลประวัติ
val historyClient = Fitness
.getHistoryClient(activity, googleSignInAccount)
val endTime = Calendar.getInstance().timeInMillis
val startTime = endTime - TimeUnit
.DAYS.toMillis(7)
historyClient.readDailyTotal(DataType.TYPE_STEP_COUNT_DELTA)
.addOnSuccessListener { total ->
println("จำนวนก้าววันนี้: $total")
}
การรวม Google Fit เริ่มต้นด้วย การเพิ่ม dependencies ของ Google Fit SDK ผ่าน build.gradle: com.google.android.gms:play-services-fitness หลังจากนั้น คุณต้องกำหนดค่าคอนโซล Google APIs — สร้างโปรเจกต์ เปิดใช้งาน Fitness API และเพิ่มข้อมูลรับรอง OAuth 2.0 ด้วยลายนิ้วมือ SHA-1 ที่ถูกต้อง
กระบวนการรวมประกอบด้วย: เริ่มต้น GoogleSignIn ด้วยขอบเขตที่จำเป็น สร้าง FitnessClient ผ่าน Fitness.getClient() ขออนุญาตจากผู้ใช้ และดำเนินการอ่านหรือเขียนข้อมูล สำหรับการบันทึกในพื้นหลัง จะใช้ RecordingClient ซึ่งรวบรวมข้อมูลโดยอัตโนมัติแม้เมื่อแอปถูกย่อให้เล็กสุด Google Fit จัดการความถี่ในการรวบรวมข้อมูลโดยอัตโนมัติตามระดับแบตเตอรี่และกิจกรรมของผู้ใช้
ตามข้อมูลของ Google แอปที่มีการรวม Google Fit แสดงอัตราการรักษาผู้ใช้สูงขึ้น 35% หมวดหมู่แอปหลักคือ ตัวติดตามฟิตเนส แอปวิ่ง ปั่นจักรยาน โยคะ และควบคุมน้ำหนัก
สิ่งสำคัญคือต้องพิจารณา ข้อกำหนดด้านความเป็นส่วนตัว: Google Fit ใช้ Restricted Scopes — ขอบเขตการเข้าถึงพิเศษที่ต้องมีการตรวจสอบแอปแยกต่างหากผ่าน OAuth Verification นักพัฒนาต้องอธิบายว่าข้อมูลใดถูกรวบรวม ใช้อย่างไร และเก็บไว้นานเท่าใด Google ยังต้องการนโยบายความเป็นส่วนตัวและการปฏิบัติตาม API Services Terms of Service
ในการบันทึกข้อมูล จะสร้าง DataSource โดยระบุชนิด อุปกรณ์ และแอป จากนั้นสร้าง DataPoint พร้อมประทับเวลาและค่า DataPoints หลายตัวรวมกันเป็น DataSet ซึ่งส่งต่อไปยัง HistoryClient.write()
val dataSource = DataSource.Builder()
.setAppPackageName(activity)
.setDataType(DataType.TYPE_STEP_COUNT_DELTA)
.setType(DataSource.TYPE_RAW)
.build()
val stepCount = DataPoint.builder(dataSource)
.setTimestamp(now, TimeUnit.MILLISECONDS)
.setField(Field.FIELD_STEPS, 500)
.build()
val dataSet = DataSet.builder(dataSource)
.add(stepCount)
.build()
historyClient.insertData(dataSet)
.addOnSuccessListener {
println("บันทึกข้อมูลแล้ว")
}
คำถามที่พบบ่อย
Google Fit รองรับ มากกว่า 50 ชนิดข้อมูล รวมถึงจำนวนก้าว แคลอรี่ อัตราการเต้นของหัวใจ ระยะทาง ความเร็ว การนอนหลับ น้ำหนัก ส่วนสูง ความดันโลหิต ระดับกลูโคส และอุณหภูมิร่างกาย รายการทั้งหมดอยู่ในเอกสาร DataType สำหรับ Android และ REST API
ใช่ การใช้ Google Fit จำเป็นต้องมี บัญชี Google ผู้ใช้อนุญาตผ่าน Google Sign-In หลังจากนั้นแอปจะเข้าถึง Fitness API ด้วยขอบเขตที่ระบุ หากไม่มีบัญชี Google แพลตฟอร์มจะไม่สามารถใช้งานได้เนื่องจากข้อมูลทั้งหมดถูกเก็บไว้ใน Google Cloud
ใช่ ข้อมูล Google Fit สามารถ ส่งออก ผ่าน Google Takeout — บริการนี้อนุญาตให้ดาวน์โหลดข้อมูลแพลตฟอร์มทั้งหมดในรูปแบบ JSON และ CSV นักพัฒนาสามารถส่งออกข้อมูลโดยทางโปรแกรมผ่าน REST API ด้วยขอบเขตการเข้าถึงที่เหมาะสม
Google Fit คือแพลตฟอร์มคลาวด์ข้ามแพลตฟอร์มที่ทำงานบน Android, iOS และผ่าน REST API ในขณะที่ HealthKit เชื่อมโยงกับระบบนิเวศ Apple iOS และเก็บข้อมูลในเครื่องบนอุปกรณ์ Google Fit ใช้ OAuth 2.0 สำหรับการอนุญาต ในขณะที่ HealthKit ใช้การอนุญาตของระบบ iOS
Google Fit API มี ข้อจำกัดดังต่อไปนี้: 1,000 คำขอต่อ 100 วินาทีต่อโปรเจกต์, 1,000 จุดข้อมูลต่อคำขอเขียน, ช่วงเวลาอ่านสูงสุด — 365 วันต่อคำขอ หากต้องการเพิ่มข้อจำกัด คุณต้องขอโควต้าผ่าน Google Cloud Console
สรุป
เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร
IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ