Од верзије 1.11.2 па надаље, RetailForce сервис за фискализацију ("middleware") биће доступан и као нативни сервис за Android.
Андроид сервис можете пронаћи у одељку за преузимање на веб-сајту RetailForce за одговарајућу верзију (retailforce.trustedfiscalmodule-Signed.apk).
Инсталација
Да бисте инсталирали Android сервис, преузмите га на одговарајући уређај. Да бисте инсталирали сервис, морате подесити дозволу за инсталацију ("Веруј овом извору").
Након инсталације, сервис се аутоматски покреће.
Такође можете дистрибуирати APK фајл преко MDM (Mobile Device Management) система.
Интеграција
RetailForce сервис за фискализацију за Android ради као сервис у предњем плану.
Да би се повезала са RetailForce услугом за Android, апликација мора да изврши следеће кораке:
- Дозволе у AndroidManifest.xml
``` xml
<uses-permission android:name="cloud.retailforce.trustedfiscalmodule.RetailForceService.BIND_RETAILFORCE" />
<queries>
<package android:name="cloud.retailforce.trustedfiscalmodule" />
</queries>
```
- Позовите RetailForce сервис за Android (пример за C#, али слично за 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);
}
```
- Повежите се на RetailForce сервис за 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");
}
```
- Захтевати дозволу.
Можда ће бити потребно затражити дозволу за позивање Foreground сервиса (почев од 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 сервис за Android ради на адреси http://127.0.0.1:7678/api/v1/ и може се користити преко REST-а (као и RetailForce REST сервис за фискализацију на Windows, Docker или Cloud сервису за фискализацију).
Различите верзије Андроида
Тренутно је сервис RetailForce за Android тестиран само на Android 14 и 15.
За старије верзије Андроида може бити потребно мало прилагодити код, посебно у погледу дозвола и повезивања услуге.
Отклањање проблема
Да бисте проверили општу функцију мидлвера или за руковање грешкама, може бити корисно да користите командно-линијски алат "Android Debug Bridge (ADB)", нпр. на Windows-у.
Да бисте то урадили, ADB за Windows мора бити доступан у директоријуму на вашем рачунару.
- Повежите Android уређај са Windows рачунаром преко USB-а,
- отворите командну линију у директоријуму ADB,
- и унесите следећу команду:
adb logcat "RetailForceService:D *:S"Ова команда приказује све записане догађаје онако како бисте их обично нашли у лог фајловима Windows или Docker сервиса.
Овај чланак је аутоматски преведен.
Komentari
Komentara: 0
Molimo prijavi se da biste komentarisali.