La plataforma Google Fit es el ecosistema de Google para recopilar, almacenar y analizar datos sobre la actividad física y la salud de los usuarios de Android. Según Google Developers, 2025, la plataforma combina Fitness API, Sensors API y Sessions API en una arquitectura única que se sincroniza con Google Cloud y es accesible mediante solicitudes REST. Un perfil de salud unificado permite a los usuarios controlar qué aplicaciones tienen acceso a sus datos de fitness y bienestar.
Puntos clave
Google Fit es una plataforma de gestión de la salud lanzada por Google en 2014 en la conferencia I/O. La plataforma proporciona una API unificada para leer y escribir datos de actividad física, permitiendo que las aplicaciones intercambien información a través de un repositorio central en la nube de Google.
A diferencia de las soluciones propietarias, Google Fit funciona en el sistema operativo Android e iOS a través de REST API. Los usuarios pueden conectar pulseras de fitness, relojes inteligentes y aplicaciones de seguimiento de actividad, y Google Fit agrega todos los datos en un único perfil de salud en Google Cloud.
Según Google I/O 2024, la plataforma se utiliza en más de 5000 aplicaciones en todo el mundo, y el número de usuarios activos supera los 100 millones. La plataforma está integrada con Wear OS y admite todos los rastreadores de fitness populares a través de aplicaciones de terceros.
La arquitectura de Google Fit se basa en tres niveles: SDK de cliente, almacenamiento en la nube de Google Fitness Store y REST API para integración de servidores. El SDK de cliente está disponible para Android (Kotlin, Java) e iOS (Swift, Objective-C), y también hay un cliente web mediante JavaScript.
Los datos se organizan como fuentes (DataSource) y puntos de datos (DataPoint). Cada fuente representa un dispositivo o aplicación, y cada punto de datos representa una sola medición con una marca de tiempo. Los grupos de puntos de datos se combinan en sesiones: períodos continuos de actividad con un tipo y duración.
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 utiliza un modelo de sincronización a través de Google Cloud con soporte para modos en línea y fuera de línea. La aplicación registra datos localmente, y el SDK de Google Fit los sincroniza automáticamente con el almacenamiento en la nube cuando hay conexión a internet. Los conflictos se resuelven según el principio de última escritura.
Cada tipo de datos tiene un formato estandarizado: pasos — TYPE_STEP_COUNT_DELTA, calorías — TYPE_CALORIES_EXPENDED, frecuencia cardíaca — TYPE_HEART_RATE_BPM, distancia — TYPE_DISTANCE_DELTA. Para tipos personalizados, se pueden crear DataType personalizados a través de la consola de Google APIs con un espacio de nombres único.
La plataforma admite dos modos de registro: activo — la aplicación llama explícitamente a HistoryClient.insertData(), y pasivo — a través de RecordingClient, que se suscribe a la recopilación de datos en segundo plano. El modo pasivo es conveniente para aplicaciones de fitness: el usuario inicia la aplicación una vez, y Google Fit recopila automáticamente pasos, calorías y distancia mientras la aplicación está minimizada, sin uso constante de la CPU.
Según Google, la plataforma procesa más de 2 mil millones de puntos de datos diariamente. La latencia media de sincronización es de 5 a 10 segundos con una conexión activa, y en modo de fondo la sincronización ocurre cada 30 minutos para ahorrar batería.
Google Fit utiliza OAuth 2.0 para la autorización con ámbitos de acceso fitness.activity.read, fitness.activity.write, fitness.body.read y fitness.body.write. La aplicación solicita solo los ámbitos necesarios, y el usuario confirma el acceso a través del diálogo estándar de Google Sign-In con selección de cuenta.
El usuario puede revocar el acceso en cualquier momento a través de Google Account Permissions o la aplicación Google Fit. Google prohíbe estrictamente compartir datos de salud con terceros sin consentimiento explícito, así como usar datos con fines publicitarios de acuerdo con la política de Restricted Scopes.
Google Fit proporciona tres API principales: Fitness API para leer y escribir datos históricos, Sensors API para transmisión de datos en tiempo real desde sensores, y Sessions API para gestionar sesiones de actividad. Cada API está disponible tanto a través del SDK de Android como mediante solicitudes REST.
Fitness API es la API principal para trabajar con datos. Admite operaciones por lotes: escritura de hasta 1000 puntos de datos en una sola llamada, lectura con filtrado por rango de tiempo, tipo de datos y origen. Para la agregación de datos se utiliza DataSet con agrupación por métricas seleccionadas.
Sensors API permite suscribirse a datos de sensores en tiempo real — pasos, frecuencia cardíaca, aceleración. Los datos se reciben a través de SensorEventListener con una frecuencia determinada por el tipo de sensor y la configuración de la aplicación.
Además de las tres API principales, Google Fit proporciona Recording API para la recopilación automática de datos sin necesidad de mantener la aplicación activa. Esta API es especialmente valiosa para Wear OS: los relojes inteligentes pueden recopilar datos de frecuencia cardíaca y actividad, y la aplicación del teléfono se sincroniza con ellos cuando se conecta. Recording API utiliza Google Fit Background Services, optimizados para un consumo mínimo de energía — hasta un 2% de batería al día con recopilación pasiva de pasos.
REST API de Google Fit está disponible en el endpoint fitness.googleapis.com. REST API permite que las aplicaciones de servidor lean y escriban datos en nombre del usuario después de la autorización OAuth. Esto es útil para paneles de análisis web, programas de fitness corporativos y sistemas médicos que requieren almacenamiento centralizado de datos de salud de empleados o pacientes.
val recordingClient = Fitness
.getRecordingClient(activity, googleSignInAccount)
recordingClient.subscribe(DataType.TYPE_STEP_COUNT_DELTA)
.addOnSuccessListener {
println("Suscripción activa")
}
// Obteniendo datos del historial
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("Pasos hoy: $total")
}
La integración de Google Fit comienza con la adición de dependencias del SDK de Google Fit a través de build.gradle: com.google.android.gms:play-services-fitness. Después, es necesario configurar la consola de Google APIs: crear un proyecto, habilitar Fitness API y agregar credenciales OAuth 2.0 con las huellas SHA-1 correctas.
El proceso de integración incluye: inicializar GoogleSignIn con los ámbitos necesarios, crear un FitnessClient mediante Fitness.getClient(), solicitar autorización al usuario y realizar operaciones de lectura o escritura de datos. Para el registro en segundo plano se utiliza RecordingClient, que recopila datos automáticamente incluso cuando la aplicación está minimizada. Google Fit gestiona automáticamente la frecuencia de recopilación de datos según el nivel de batería y la actividad del usuario.
Según Google, las aplicaciones con integración de Google Fit muestran un 35% más de retención de usuarios. Las categorías clave de aplicaciones son rastreadores de fitness, aplicaciones para correr, ciclismo, yoga y control de peso.
Es importante considerar los requisitos de privacidad: Google Fit utiliza Restricted Scopes, ámbitos de acceso especiales que requieren verificación separada de la aplicación a través de OAuth Verification. El desarrollador debe describir qué datos se recopilan, cómo se utilizan y cuánto tiempo se almacenan. Google también exige una política de privacidad y el cumplimiento de los API Services Terms of Service.
Para registrar datos, se crea un DataSource especificando el tipo, dispositivo y aplicación. Luego se forma un DataPoint con una marca de tiempo y valores. Múltiples DataPoints se combinan en un DataSet, que se pasa a 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("Datos guardados")
}
Preguntas frecuentes
Google Fit admite más de 50 tipos de datos, incluyendo pasos, calorías, frecuencia cardíaca, distancia, velocidad, sueño, peso, altura, presión arterial, nivel de glucosa y temperatura corporal. La lista completa está disponible en la documentación de DataType para Android y REST API.
Sí, para usar Google Fit se requiere una cuenta de Google. El usuario se autoriza a través de Google Sign-In, después de lo cual la aplicación obtiene acceso a Fitness API con los ámbitos especificados. Sin una cuenta de Google, la plataforma no está disponible ya que todos los datos se almacenan en Google Cloud.
Sí, los datos de Google Fit se pueden exportar a través de Google Takeout: el servicio permite descargar todos los datos de la plataforma en formatos JSON y CSV. Los desarrolladores pueden exportar datos mediante programación a través de REST API con el ámbito de acceso correspondiente.
Google Fit es una plataforma en la nube multiplataforma que funciona en Android, iOS y a través de REST API, mientras que HealthKit está vinculado al ecosistema de Apple iOS y almacena datos localmente en el dispositivo. Google Fit utiliza OAuth 2.0 para la autorización, mientras que HealthKit usa permisos del sistema iOS.
Google Fit API tiene los siguientes límites: 1000 solicitudes por cada 100 segundos por proyecto, 1000 puntos de datos por solicitud de escritura, rango de tiempo de lectura máximo — 365 días por solicitud. Para aumentar los límites, es necesario solicitar una cuota a través de Google Cloud Console.
Resumen
Desarrollaremos una aplicación móvil llave en mano
IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.
Lea también