A partir de la release 1.11.2, el servicio de fiscalización de RetailForce («middleware») también estará disponible como servicio nativo para Android.
Puede encontrar el servicio para Android en la sección de descargas de la RetailForce website para la versión correspondiente (retailforce.TrustedFiscalModule-Signed.apk).
Instalación
Para instalar el servicio en Android, descargue el paquete en el dispositivo correspondiente. Para completar la instalación, configure el permiso de instalación («Confiar en esta fuente»).
Tras la instalación, el servicio se inicia automáticamente.
También puede distribuir el archivo APK mediante un sistema MDM (gestión de dispositivos móviles).
Integración
El servicio de fiscalización de RetailForce para Android se ejecuta como un servicio en primer plano.
Para conectarse al servicio RetailForce para Android, la aplicación debe seguir los siguientes pasos:
- Permisos en AndroidManifest.xml
``` xml
<uses-permission android:name="cloud.retailforce.trustedfiscalmodule.RetailForceService.BIND_RETAILFORCE" />
<queries>
<package android:name="cloud.retailforce.trustedfiscalmodule" />
</queries>
```
- Llamar al servicio RetailForce para Android (ejemplo en C#, pero similar en Java/Kotlin)
``` csharp
var intent = new Intent();
ComponentName componentName = new ComponentName("cloud.retailforce.trustedfiscalmodule", "cloud.retailforce.trustedfiscalmodule.RetailForceService");
intent.SetComponent(componentName);
if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
{
StartForegroundService(intent);
}
else
{
StartService(intent);
}
```
- Conectarse al servicio RetailForce para Android
``` csharp
ServiceConnection serviceConnection = new ServiceConnection();
if (!BindService(intent, serviceConnection, Android.Content.Bind.AutoCreate | Android.Content.Bind.AllowActivityStarts))
{
_logger.LogInformation("Bind service failed");
throw new Exception("Could not bind RetailForceService");
}
```
- Solicitar permisos.
Podría ser necesario solicitar permiso para llamar a un servicio en primer plano (a partir de Android 13).
``` csharp
if (Build.VERSION.SdkInt >= BuildVersionCodes.Tiramisu)
{
if (CheckSelfPermission(Android.Manifest.Permission.ForegroundService) != Permission.Granted)
{
RequestPermissions(new[] { Android.Manifest.Permission.ForegroundService }, 101);
}
}
```
El servicio RetailForce para Android se ejecuta en http://127.0.0.1:7678/api/v1/ y se puede acceder a él a través de REST (al igual que el servicio REST de fiscalización de RetailForce en Windows, Docker o el servicio de fiscalización en la nube).
Diferentes versiones de Android
Actualmente, el servicio RetailForce para Android solo se ha probado en Android 14 y 15.
En el caso de versiones anteriores de Android, puede ser necesario ajustar ligeramente el código, especialmente en lo que respecta a los permisos y al enlace del servicio.
Resolución de problemas
Para verificar el funcionamiento general del middleware o depurar errores, resulta útil emplear la herramienta de línea de comandos «Android Debug Bridge (ADB)», por ejemplo, en Windows.
Para ello, ADB para Windows debe estar disponible en un directorio de su ordenador.
- conecte el dispositivo Android al ordenador con Windows mediante USB,
- abra una ventana de comandos en el directorio de ADB,
- e introduzca el siguiente comando:
adb logcat "RetailForceService:D *:S"Este comando muestra todas las entradas de registro tal y como aparecerían normalmente en los archivos de registro del servicio de Windows o de Docker.
Este artículo ha sido traducido automáticamente.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.