Google Fit — nó là gì, kiến trúc nền tảng và API

Tác giả: IT Sectr Đã đăng: 2026-03-25 Thời gian đọc: 8 phút

Nền tảng Google Fit là hệ sinh thái của Google để thu thập, lưu trữ và phân tích dữ liệu hoạt động thể chất và sức khỏe của người dùng Android. Theo Google Developers, 2025, nền tảng kết hợp Fitness API, Sensors API và Sessions API thành một kiến trúc duy nhất đồng bộ với Google Cloud và có thể truy cập qua các yêu cầu REST. Hồ sơ sức khỏe thống nhất cho phép người dùng kiểm soát ứng dụng nào có quyền truy cập vào dữ liệu thể dục và sức khỏe của họ.

Điểm chính

  • Google Fit là nền tảng sức khỏe của Google kết hợp dữ liệu hoạt động thể chất từ các ứng dụng khác nhau.
  • Fitness API là giao diện chính để đọc và ghi dữ liệu về số bước, calo và nhịp tim.
  • Sensors API cho phép nhận dữ liệu thời gian thực từ cảm biến thiết bị.
  • Sessions API quản lý các phiên hoạt động: tập luyện, đi bộ, chạy bộ.
  • Google Fit SDK có sẵn cho Android và iOS, cũng như qua REST API cho máy chủ web.

Google Fit là gì?

Google Fit là nền tảng quản lý sức khỏe được Google ra mắt vào năm 2014 tại hội nghị I/O. Nền tảng cung cấp một API thống nhất để đọc và ghi dữ liệu hoạt động thể chất, cho phép các ứng dụng trao đổi thông tin qua một kho lưu trữ trung tâm trong đám mây Google.

Không giống các giải pháp độc quyền, Google Fit hoạt động trên hệ điều hành Android và iOS qua REST API. Người dùng có thể kết nối vòng đeo thể dục, đồng hồ thông minh và ứng dụng theo dõi hoạt động, và Google Fit tổng hợp tất cả dữ liệu thành một hồ sơ sức khỏe duy nhất trong Google Cloud.

Theo Google I/O 2024, nền tảng được sử dụng trong hơn 5000 ứng dụng trên toàn thế giới, với hơn 100 triệu người dùng hoạt động. Nền tảng được tích hợp với Wear OS và hỗ trợ tất cả các trình theo dõi thể dục phổ biến qua ứng dụng bên thứ ba.

Kiến trúc Google Fit

Kiến trúc Google Fit được xây dựng trên ba lớp: SDK máy khách, lưu trữ đám mây Google Fitness Store và REST API cho tích hợp máy chủ. SDK máy khách có sẵn cho Android (Kotlin, Java) và iOS (Swift, Objective-C), và cũng có máy khách web qua JavaScript.

Dữ liệu được tổ chức dưới dạng nguồn (DataSource) và điểm dữ liệu (DataPoint). Mỗi nguồn đại diện cho một thiết bị hoặc ứng dụng, và mỗi điểm dữ liệu đại diện cho một phép đo duy nhất với dấu thời gian. Các nhóm điểm dữ liệu được kết hợp thành các phiên — khoảng thời gian hoạt động liên tục với loại và thời lượng.

kotlin
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 hoạt động như thế nào

Google Fit sử dụng mô hình đồng bộ qua Google Cloud hỗ trợ cả chế độ trực tuyến và ngoại tuyến. Ứng dụng ghi dữ liệu cục bộ và Google Fit SDK tự động đồng bộ với lưu trữ đám mây khi có kết nối Internet. Xung đột được giải quyết theo nguyên tắc ghi cuối cùng.

Mỗi loại dữ liệu có định dạng chuẩn hóa: số bước — TYPE_STEP_COUNT_DELTA, calo — TYPE_CALORIES_EXPENDED, nhịp tim — TYPE_HEART_RATE_BPM, khoảng cách — TYPE_DISTANCE_DELTA. Đối với các loại tùy chỉnh, bạn có thể tạo DataType tùy chỉnh qua bảng điều khiển Google APIs với không gian tên duy nhất.

Nền tảng hỗ trợ hai chế độ ghi: chủ động — ứng dụng gọi rõ ràng HistoryClient.insertData(), và thụ động — qua RecordingClient, đăng ký thu thập dữ liệu trong nền. Chế độ thụ động thuận tiện cho các ứng dụng thể dục: người dùng khởi chạy ứng dụng một lần và Google Fit tự động thu thập số bước, calo và khoảng cách khi ứng dụng được thu nhỏ mà không cần sử dụng CPU liên tục.

Theo Google, nền tảng xử lý hơn 2 tỷ điểm dữ liệu mỗi ngày. Độ trễ đồng bộ trung bình là 5–10 giây với kết nối hoạt động và ở chế độ nền, đồng bộ diễn ra 30 phút một lần để tiết kiệm pin.

Sự đồng ý của người dùng và bảo mật

Google Fit sử dụng OAuth 2.0 để ủy quyền với phạm vi truy cập fitness.activity.read, fitness.activity.write, fitness.body.read và fitness.body.write. Ứng dụng chỉ yêu cầu các phạm vi cần thiết và người dùng xác nhận quyền truy cập qua hộp thoại Google Sign-In tiêu chuẩn với lựa chọn tài khoản.

Người dùng có thể thu hồi quyền truy cập bất cứ lúc nào qua Google Account Permissions hoặc ứng dụng Google Fit. Google nghiêm cấm chia sẻ dữ liệu sức khỏe với bên thứ ba mà không có sự đồng ý rõ ràng, cũng như sử dụng dữ liệu cho mục đích quảng cáo theo chính sách Restricted Scopes.

API Google Fit

Google Fit cung cấp ba API chính: Fitness API để đọc và ghi dữ liệu lịch sử, Sensors API để truyền dữ liệu thời gian thực từ cảm biến và Sessions API để quản lý các phiên hoạt động. Mỗi API có sẵn qua SDK Android và qua các yêu cầu REST.

Fitness API là API chính để làm việc với dữ liệu. Nó hỗ trợ các thao tác hàng loạt: ghi tối đa 1000 điểm dữ liệu trong một lần gọi, đọc có lọc theo phạm vi thời gian, loại dữ liệu và nguồn. Để tổng hợp dữ liệu, DataSet được sử dụng với nhóm theo các chỉ số đã chọn.

Sensors API cho phép đăng ký dữ liệu cảm biến thời gian thực — số bước, nhịp tim, gia tốc. Dữ liệu được nhận qua SensorEventListener với tần suất xác định bởi loại cảm biến và cài đặt ứng dụng.

Ngoài ba API chính, Google Fit cung cấp Recording API để tự động thu thập dữ liệu mà không cần giữ ứng dụng hoạt động. API này đặc biệt có giá trị cho Wear OS: đồng hồ thông minh có thể thu thập dữ liệu nhịp tim và hoạt động, và ứng dụng điện thoại đồng bộ với chúng khi kết nối. Recording API sử dụng Google Fit Background Services, được tối ưu hóa cho mức tiêu thụ điện tối thiểu — lên tới 2% pin mỗi ngày khi thu thập bước thụ động.

REST API Google Fit có sẵn tại điểm cuối fitness.googleapis.com. REST API cho phép các ứng dụng máy chủ đọc và ghi dữ liệu thay mặt người dùng sau khi ủy quyền OAuth. Điều này hữu ích cho bảng điều khiển phân tích web, chương trình thể dục doanh nghiệp và hệ thống y tế yêu cầu lưu trữ tập trung dữ liệu sức khỏe của nhân viên hoặc bệnh nhân.

kotlin
val recordingClient = Fitness
    .getRecordingClient(activity, googleSignInAccount)

recordingClient.subscribe(DataType.TYPE_STEP_COUNT_DELTA)
    .addOnSuccessListener {
        println("Đăng ký đang hoạt động")
    }

// Lấy dữ liệu lịch sử
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("Số bước hôm nay: $total")
    }

Tích hợp Google Fit vào ứng dụng

Tích hợp Google Fit bắt đầu bằng việc thêm phụ thuộc Google Fit SDK qua build.gradle: com.google.android.gms:play-services-fitness. Sau đó, bạn cần cấu hình bảng điều khiển Google APIs — tạo dự án, bật Fitness API và thêm thông tin xác thực OAuth 2.0 với dấu vân tay SHA-1 chính xác.

Quy trình tích hợp bao gồm: khởi tạo GoogleSignIn với các phạm vi cần thiết, tạo FitnessClient qua Fitness.getClient(), yêu cầu ủy quyền người dùng và thực hiện các thao tác đọc hoặc ghi dữ liệu. Để ghi trong nền, RecordingClient được sử dụng, tự động thu thập dữ liệu ngay cả khi ứng dụng được thu nhỏ. Google Fit tự động quản lý tần suất thu thập dữ liệu dựa trên mức pin và hoạt động của người dùng.

Theo Google, các ứng dụng tích hợp Google Fit cho thấy tỷ lệ giữ chân người dùng cao hơn 35%. Các danh mục ứng dụng chính là trình theo dõi thể dục, ứng dụng chạy bộ, đạp xe, yoga và kiểm soát cân nặng.

Điều quan trọng là cân nhắc các yêu cầu về quyền riêng tư: Google Fit sử dụng Restricted Scopes — các phạm vi truy cập đặc biệt yêu cầu xác minh ứng dụng riêng qua OAuth Verification. Nhà phát triển phải mô tả dữ liệu nào được thu thập, cách sử dụng và thời gian lưu trữ. Google cũng yêu cầu chính sách quyền riêng tư và tuân thủ API Services Terms of Service.

Ví dụ ghi thực tế

Để ghi dữ liệu, một DataSource được tạo với loại, thiết bị và ứng dụng được chỉ định. Sau đó, một DataPoint được tạo với dấu thời gian và giá trị. Nhiều DataPoints được kết hợp thành một DataSet, được chuyển đến HistoryClient.write().

kotlin
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("Dữ liệu đã lưu")
    }

Câu hỏi thường gặp

Google Fit hỗ trợ những dữ liệu nào?

Google Fit hỗ trợ hơn 50 loại dữ liệu, bao gồm số bước, calo, nhịp tim, khoảng cách, tốc độ, giấc ngủ, cân nặng, chiều cao, huyết áp, mức đường huyết và nhiệt độ cơ thể. Danh sách đầy đủ có trong tài liệu DataType cho Android và REST API.

Có cần tài khoản Google để sử dụng Google Fit không?

Có, để sử dụng Google Fit cần có tài khoản Google. Người dùng ủy quyền qua Google Sign-In, sau đó ứng dụng nhận được quyền truy cập Fitness API với các phạm vi đã chỉ định. Nếu không có tài khoản Google, nền tảng không khả dụng vì tất cả dữ liệu được lưu trữ trong Google Cloud.

Có thể xuất dữ liệu từ Google Fit không?

Có, dữ liệu Google Fit có thể được xuất qua Google Takeout — dịch vụ cho phép tải xuống tất cả dữ liệu nền tảng ở định dạng JSON và CSV. Nhà phát triển có thể xuất dữ liệu theo chương trình qua REST API với phạm vi truy cập thích hợp.

Google Fit khác HealthKit như thế nào?

Google Fit là nền tảng đám mây đa nền tảng hoạt động trên Android, iOS và qua REST API, trong khi HealthKit gắn với hệ sinh thái Apple iOS và lưu trữ dữ liệu cục bộ trên thiết bị. Google Fit sử dụng OAuth 2.0 để ủy quyền, trong khi HealthKit sử dụng quyền hệ thống iOS.

Giới hạn của Google Fit API là gì?

Google Fit API có các giới hạn sau: 1000 yêu cầu trên 100 giây cho mỗi dự án, 1000 điểm dữ liệu cho mỗi yêu cầu ghi, phạm vi đọc tối đa — 365 ngày cho mỗi yêu cầu. Để tăng giới hạn, bạn cần yêu cầu hạn ngạch qua Google Cloud Console.

Tổng kết

  • Google Fit là nền tảng sức khỏe đám mây đa nền tảng của Google, ra mắt năm 2014.
  • Nền tảng cung cấp ba API: Fitness, Sensors và Sessions cho các kịch bản sử dụng khác nhau.
  • Khoảng 5000 ứng dụng sử dụng Google Fit và số người dùng vượt quá 100 triệu.
  • OAuth 2.0 đảm bảo ủy quyền an toàn với các phạm vi truy cập chi tiết.
  • Google Cloud đảm bảo đồng bộ thời gian thực và truy cập qua REST API.
  • Tích hợp yêu cầu thiết lập Google APIs Console và kết nối SDK qua build.gradle.
  • Recording API thu thập dữ liệu nền với mức tiêu thụ pin tối thiểu lên tới 2% mỗi ngày.

Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay

IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.

Thảo luận dự án

Đọc thêm