От release 1.11.2 нататък услугата за фискализация на RetailForce („middleware“) ще бъде достъпна и като нативна услуга за Android.
Можете да намерите услугата за Android в раздела за изтегляне на RetailForce website за съответната версия (retailforce.TrustedFiscalModule-Signed.apk).
Инсталиране
За да инсталирате услугата за Android, изтеглете я на съответното устройство. За да инсталирате услугата, трябва да зададете разрешение за инсталиране („Довери се на този източник“).
След инсталирането услугата се стартира автоматично.
Можете също така да разпространите APK файла чрез система за управление на мобилни устройства (MDM).
Интеграция
Услугата RetailForce Fiscalisation за 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");
}
```
- Поискане на разрешение.
Може да се наложи да се поиска разрешение за извикване на услуга на преден план (от 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 Fiscalisation REST на Windows, Docker или Cloud Fiscalisation Service).
Различни версии на Android
Към момента услугата RetailForce за Android е тествана само на Android 14 и 15.
За по-стари версии на Android може да се наложи леко коригиране на кода, особено по отношение на разрешенията и свързването на услугата.
Отстраняване на проблеми
За да проверите общото функциониране на middleware-то или за обработка на грешки, може да е полезно да използвате инструмента за командния ред „Android Debug Bridge (ADB)“, например в Windows.
За целта ADB за Windows трябва да е наличен в някоя папка на вашия компютър.
- Свържете устройството с Android към компютъра с Windows чрез USB,
- отворете командния ред в директорията на ADB,
- и въведете следната команда:
adb logcat "RetailForceService:D *:S"Тази команда показва всички записи в лога, както обикновено бихте ги намерили в лог файловете на Windows или Docker услугата.
Тази статия е преведена автоматично.
Коментари
0 коментара
Влезте в услугата, за да оставите коментар.