Od verzije 1.11.2 nadalje, RetailForce usluga fiskalizacije ("middleware") bit će dostupna i kao nativna usluga za Android.
Android uslugu možete pronaći u odjeljku za preuzimanje na web-stranici RetailForcea za odgovarajuću verziju (retailforce.trustedfiscalmodule-Signed.apk).
Instalacija
Da biste instalirali Android uslugu, preuzmite je na odgovarajući uređaj. Za instalaciju usluge morate omogućiti instalaciju iz nepoznatih izvora ('Povjeri ovom izvoru').
Nakon instalacije, usluga se pokreće automatski.
APK datoteku također možete distribuirati putem MDM (Mobile Device Management) sustava.
Integracija
RetailForce usluga fiskalizacije za Android radi kao pozadinska usluga.
Da bi se aplikacija povezala na RetailForce uslugu za Android, mora izvršiti sljedeće korake:
- Dozvole u AndroidManifest.xml
``` xml
<uses-permission android:name="cloud.retailforce.trustedfiscalmodule.RetailForceService.BIND_RETAILFORCE" />
<queries>
<package android:name="cloud.retailforce.trustedfiscalmodule" />
</queries>
```
- Pozovite RetailForce uslugu za Android (primjer za C#, ali slično i za 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);
}
```
- Povežite se sa RetailForce uslugom za 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");
}
```
- Zatražite dopuštenje.
Možda će biti potrebno zatražiti dopuštenje za pozivanje pozadinske usluge (od Androida 13).
``` csharp
if (Build.VERSION.SdkInt >= BuildVersionCodes.Tiramisu)
{
if (CheckSelfPermission(Android.Manifest.Permission.ForegroundService) != Permission.Granted)
{
RequestPermissions(new[] { Android.Manifest.Permission.ForegroundService }, 101);
}
}
```
RetailForce usluga za Android radi na adresi http://127.0.0.1:7678/api/v1/ i može joj se pristupiti putem REST-a (baš kao i RetailForce usluzi za fiskalizaciju putem REST-a na sustavima Windows, Docker ili u usluzi za oblačnu fiskalizaciju).
Različite verzije Androida
Trenutno je usluga RetailForce za Android testirana samo na Androidu 14 i 15.
Za starije verzije Androida možda će biti potrebno malo prilagoditi kôd, posebno u pogledu dozvola i povezivanja usluge.
Rješavanje problema
Za provjeru opće funkcionalnosti posredničkog sloja ili za rukovanje pogreškama može biti korisno koristiti alat naredbenog retka 'Android Debug Bridge (ADB)', npr. na sustavu Windows.
Za to ADB za Windows mora biti dostupan u direktoriju na vašem računalu.
- Povežite Android uređaj s računalom s operativnim sustavom Windows putem USB-a,
- otvorite naredbeni redak u ADB direktoriju,
- i unesite sljedeću naredbu:
adb logcat "RetailForceService:D *:S"Ova naredba prikazuje sve zapise u dnevniku onako kako biste ih obično pronašli u datotekama dnevnika usluge Windows ili Docker.
Ovaj je članak automatski preveden.
Komentari
0 komentara
Molimo Prijavite se kako bi ostavili komentar.