Why is nothing being printed by POS Print?
Post date: 22-Apr-2022 10:11:30
POS Print prints fine when I print a test page, but won't print when I send a print job from Taximeter. Why?
Some device manufacturers have broken Android specifications and implemented their own aggressive management of apps that run in the background in an attempt to reduce battery use. POS Print is a print service that handles print jobs from other apps in the background but unfortunately the non-standard techniques employed prevent POS Print from processing print requests. For example, Lenovo has its own auto start and background app management, see https://android.hubalek.net/widget-not-refreshing-lenovo.html. In this case, the POS Print app would need to be removed from background app management and unrestricted from launch. Other vendors have similar battery saving approaches, see https://android.hubalek.net/troubleshooting.html.
From Android 12, Google has added further restrictions to prevent apps launching services from the background. These can be disabled on an app by app basis. This can usually be performed under "Battery optimization" settings, e.g.
Go to your device's Settings
Search for "optimization" or "app battery"
Tap on "Battery optimization" or "App battery usage"
Select "All Apps" from the filter dropdown box. Scroll down in the list until you find "POS Print", tap on it, and then select "Don't optimize", or "Unrestricted". This will allow other apps, e.g. Taximeter, to launch the POS Print service from the background.
From Android 14, the location of the "Battery optimization" setting has changed:
Go to your device's Settings
Search for "app battery"
Tap on "App battery usage"
Select "All Apps" from the filter dropdown box. Scroll down in the list until you find "POS Print", tap on it, and then touch the "Allow background usage" text. On the "Allow background usage" page, select the "Unrestricted" option.