Cómo integrar los Health Services de los Galaxy Watch4 en tus apps
Health Services Galaxy Watch 4 SmartWatch integración app

Cómo integrar los Health Services de los Galaxy Watch4 en tus apps

16/02/2022

Cómo integrar los Health Services de los Galaxy Watch4 en tus apps

Los dispositivos que nos ayudan a cuidar nuestra salud están más de moda que nunca y los smartwatches se han convertido en un complemento indispensable. Es por ello que mejorar las prestaciones de estos dispositivos y las aplicaciones con las que se conectan es clave para la experiencia de usuario.

¿Quieres crear una aplicación centrada en los usuarios que utilizan los smartwatches para hacer deporte o controlar rutinas?

Si tu respuesta es sí, la integración de los Health Services de los Galaxy Watch en tus apps es todo lo que necesitas para ofrecer un servicio completo y satisfacer las necesidades de tus usuarios, facilitando su uso y mejorando considerablemente la extracción y recopilación de datos.

Los Health Services proporcionan un conjunto de APIs que permiten a las apps rastrear la información recogida por los sensores de los smartwatches. Gracias a ellas, será posible para tu app aprovechar el potente hardware de los Galaxy Watch4, que ejecutan Wear OS Powered by Samsung.

Interesante ¿verdad? Te contamos paso a paso cómo hacerlo.

Lo primero que debes saber es que los Health Services requieren Android 11 o superior. Una vez que cuentes con el SO apropiado, añade la información necesaria a los archivos de configuración de tu app con los pasos que te indicamos a continuación:

  1. Añade la dependencia apropiada al archivo build.gradle de tu app.

 

dependencies {

    implementation 'androidx.health:health-services-client:1.0.0-alpha03

    // ...

}

 

  1. Añade en el Android Manifest, la configuración necesaria para permitir la conexión de tu app con los Health Services

 

<queries>

                         <package android:name="com.google.android.wearable.healthservices" />

</queries>

 

  1. Continúa añadiendo los permisos necesarios para tu app.

Recuerda que es importante incluir tan solo los permisos que la aplicación requiera, así mejorarás su seguridad y será garantía de una experiencia de usuario positiva.

 

<uses-permission android:name="android.permission.BODY_SENSORS" />

<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />

<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

 

Además, si tu aplicación cuenta con monitorización pasiva, deberás añadir las siguientes líneas de código:

 

<receiver

android:name="com.samsung.android.eventsmonitor.EventBroadcastReceiver"

android:exported="true">

    <intent-filter>

                          <action

                          android:name="hs.passivemonitoring.HEALTH_EVENT" />

    </intent-filter>

<receiver/>

 

Otro importante paso a tener en cuenta es que, para obtener el consentimiento del usuario, los permisos deben solicitarse mediante programación. Puedes solicitar su validación añadiendo estas líneas. Si la aplicación ha solicitado los permisos correctamente, aparecerá una ventana emergente tras la ejecución de su aplicación en la que se podrá aceptar o rechazar el consentimiento.

 

requestPermissions(new String[] {Manifest.permission.BODY_SENSORS,

                         Manifest.permission.FOREGROUND_SERVICE,

                         Manifest.permission.ACTIVITY_RECOGNITION,

                         Manifest.permission.ACCESS_FINE_LOCATION}, 0);

 

Para obtener el resultado de la solicitud de permiso debes comprobar el resultado como se muestra en el código siguiente:

 

@Override

public void onRequestPermissionsResult(int requestCode,

                                                @NonNull String[] permissions, @NonNull int[] grantResults) {

                         if(requestCode == 0) {

                                   List<String> notGrantedPermissions= new LinkedList<>();

                                   setPermissionGranted(true);

 

                         for(int i=0; i<permissions.length; i++) {

                                   if(grantResults[i] == PERMISSION_DENIED) {

                                               setPermissionGranted(false);

                                               notGrantedPermissions.add(permissions[i]);

                                   }

                         }

 

                         if(!getPermissionGranted()) {

                         // Handle permission denied here.

                                   }

                         }

                      super.onRequestPermissionsResult(requestCode,permissions,grantResults);

}

 

 

No hay nada que perjudique más a la experiencia de usuario que una app que no funciona como se espera. Para solucionarlo los Health Services incorporan una manera de verificar que su configuración soporta la funcionalidad que requiere. Gracias a las API utilizadas para analizar esta compatibilidad, es posible encontrar los errores y por consecuencia, la mejor manera de comunicar sus soluciones.

¿Ya has configurado los Health Services de Galaxy Watch en tu app y funcionan correctamente? ¡Enhorabuena! tienes todo listo para empezar a utilizar las APIs y mejorar las capacidades de tu aplicación.

Desarrolla la app de salud más completa y avanzada y ayuda a millones de usuarios a mejorar su salud gracias a la monitorización y el control de su actividad y sus rutinas de ejercicios y descanso.

 

Samsung Dev Spain es la comunidad oficial de Samsung para desarrolladores españoles. Si te das de alta, puedes conseguir entrar en nuestro programa de préstamos -y conseguir dispositivos para desarrollar apps para nuestro ecosistema-, acceder a material gratuito como el whitepaper Blockchain: dibujando un futuro descentralizado, participar en promociones como dispositivos por apps o acudir gratis a eventos formativos como Samsung Dev Day.