Nuo versijos 1.11.2 „RetailForce Fiscalisation Service“ („tarpinė programinė įranga“) taip pat teikiama kaip „Android“ sistema skirta natūrali paslauga.
„Android“ paslaugą rasite „RetailForce“ svetainės atsisiuntimų skyriuje prie atitinkamos versijos (retailforce.trustedfiscalmodule-Signed.apk).
Įdiegimas
Norėdami įdiegti „Android“ paslaugą, atsisiųskite ją į atitinkamą įrenginį. Norėdami įdiegti paslaugą, turite nustatyti įdiegimo leidimą („Pasitikėti šiuo šaltiniu“).
Įdiegus paslauga paleidžiama automatiškai.
APK failą taip pat galite platinti per MDM (Mobile Device Management).
Integracija
„RetailForce Fiscalisation Service“ „Android“ sistemai veikia kaip pirmojo plano paslauga (Foreground Service).
Norint prisijungti prie „RetailForce“ paslaugos „Android“ sistemoje, programa turi atlikti šiuos veiksmus:
- Leidimai „AndroidManifest.xml“
``` xml
<uses-permission android:name="cloud.retailforce.trustedfiscalmodule.RetailForceService.BIND_RETAILFORCE" />
<queries>
<package android:name="cloud.retailforce.trustedfiscalmodule" />
</queries>
```
- Paslaugos iškvietimas (pavyzdys C#, panašus 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);
}
```
- Prisijungimas prie „RetailForce“ paslaugos „Android“ sistemai (bind)
``` 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");
}
```
- Leidimų prašymas
Gali prireikti prašyti leidimo iškviesti priešakinę paslaugą (nuo „Android 13“ versijos).
``` csharp
if (Build.VERSION.SdkInt >= BuildVersionCodes.Tiramisu)
{
if (CheckSelfPermission(Android.Manifest.Permission.ForegroundService) != Permission.Granted)
{
RequestPermissions(new[] { Android.Manifest.Permission.ForegroundService }, 101);
}
}
```
„RetailForce“ paslauga „Android“ sistemai veikia „http://127.0.0.1:7678/api/v1/“ aplinkoje ir ją galima iškviesti per REST (tiksliai taip pat, kaip „RetailForce Fiscalisation“ REST paslaugą „Windows“, „Docker“ arba „Cloud Fiscalisation Service“ aplinkose).
Įvairios „Android“ versijos
Šiuo metu „RetailForce“ paslauga „Android“ buvo išbandyta tik „Android 14“ ir „15“ versijose.
Senesnėse „Android“ versijose gali prireikti šiek tiek pritaikyti kodą, ypač leidimų ir paslaugos susiejimo atžvilgiu.
Klaidų šalinimas
Norint patikrinti bendrą tarpinės programinės įrangos veikimą arba išspręsti klaidas, gali būti naudinga naudoti komandinės eilutės įrankį „Android Debug Bridge (ADB)“, pvz., „Windows“ sistemoje.
Tam ADB „Windows“ turi būti prieinama jūsų kompiuterio kataloge.
- Prijunkite „Android“ įrenginį prie „Windows“ kompiuterio, pvz., per USB,
- atidarykite komandų eilutę ADB kataloge,
- įveskite šią komandą:
adb logcat "RetailForceService:D *:S"Ši komanda rodo visus žurnalo įrašus, kuriuos paprastai rasite „Windows“ arba „Docker“ paslaugų žurnalo failuose.
Komentarai
0 komentarų
Tam, kad paliktumėte komentarus prisijunkite