Från och med release 1.11.2 kommer RetailForce Fiscalisation Service (”middleware”) även att finnas tillgänglig som en inbyggd tjänst för Android.
Du hittar Android-tjänsten i nedladdningsavsnittet på RetailForce website för respektive version (retailforce.TrustedFiscalModule-Signed.apk).
Installation
För att installera Android-tjänsten laddar du ner den till den aktuella enheten. För att installera tjänsten måste du ange installationsbehörighet (”Lita på den här källan”).
Efter installationen körs tjänsten automatiskt.
Du kan även distribuera APK-filen via ett MDM-system (Mobile Device Management).
Integration
RetailForce Fiscalisation Service för Android körs som en förgrundstjänst.
För att ansluta till RetailForce-tjänsten för Android måste appen utföra följande steg:
- Behörigheter i AndroidManifest.xml
``` xml
<uses-permission android:name="cloud.retailforce.trustedfiscalmodule.RetailForceService.BIND_RETAILFORCE" />
<queries>
<package android:name="cloud.retailforce.trustedfiscalmodule" />
</queries>
```
- Anropa RetailForce-tjänsten för Android (exempel för C#, men liknande i 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);
}
```
- Koppla till RetailForce-tjänsten för 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");
}
```
- Begär behörighet.
Det kan vara nödvändigt att begära behörighet för att anropa en förgrundstjänst (från och med Android 13).
``` csharp
if (Build.VERSION.SdkInt >= BuildVersionCodes.Tiramisu)
{
if (CheckSelfPermission(Android.Manifest.Permission.ForegroundService) != Permission.Granted)
{
RequestPermissions(new[] { Android.Manifest.Permission.ForegroundService }, 101);
}
}
```
RetailForce-tjänsten för Android körs på http://127.0.0.1:7678/api/v1/ och kan nås via REST (precis som RetailForce Fiscalisation REST-tjänsten på Windows, Docker eller Cloud Fiscalisation Service).
Olika Android-versioner
För närvarande har RetailForce-tjänsten för Android endast testats på Android 14 och 15.
För äldre Android-versioner kan det vara nödvändigt att justera koden något, särskilt när det gäller behörigheter och tjänstebindning.
Felsökning
För att kontrollera middlewarens allmänna funktion eller för felhantering kan det vara till hjälp att använda kommandoradsverktyget ”Android Debug Bridge (ADB)”, t.ex. i Windows.
För att göra detta måste ADB för Windows finnas tillgängligt i en katalog på din dator.
- Anslut Android-enheten till Windows-datorn via USB,
- öppna en kommandotolk i ADB-katalogen,
- och ange följande kommando:
adb logcat "RetailForceService:D *:S"Detta kommando visar alla loggposter precis som de normalt skulle visas i loggfilerna för Windows- eller Docker-tjänsten.
Den här artikeln har översatts automatiskt.
Kommentarer
0 kommentarer
logga in för att lämna en kommentar.