Notification bar cannot be dynamically enabled/disabled via Esper SDK in kiosk mode
Android
If you're running devices in kiosk mode and need to control the notification bar programmatically using the Esper SDK, you should know that dynamic runtime toggling is not currently supported. This article explains your options and how to work around this limitation.
Before you begin
This limitation applies if you're trying to:
- Enable or disable the notification bar at runtime from your application or backend system
- Allow temporary access to the notification bar for Bluetooth troubleshooting (for example, pairing a Stripe M2 card reader)
- Return the notification bar to a disabled state after troubleshooting is complete
The Esper Device SDK does not expose a method to toggle the notification bar state dynamically. Notification bar visibility in kiosk mode is controlled only through Blueprint configuration, which requires a Blueprint update and convergence cycle each time you change it.
Workaround 1: Permanently enable the notification bar via Blueprint
If your use case allows the notification bar to remain permanently enabled in kiosk mode, use this approach to unblock your deployment.
- In the Esper Console, go to Blueprints and open the Blueprint applied to your affected device(s).
- Locate the Notification Bar setting in the kiosk mode configuration section. See the Kiosk section of the Blueprint documentation for details.
- Set Notification Bar to Enabled.
- Save the Blueprint and converge it to your target device(s) or group.
- On the device, verify the notification bar is accessible in kiosk mode by swiping down from the top of the screen.
- Check that the device policy status shows Compliant in Devices & Groups → [Device Name] → Overview.
Workaround 2: Use Android App Intents to launch Bluetooth settings
If your peripheral's vendor SDK supports connecting through the Android Settings UI, you can use Esper Android App Intents to open the Bluetooth settings screen directly from within your app. This bypasses the need to enable the notification bar.
Note: This workaround does not work with all peripherals. For example, Stripe M2 card readers handle Bluetooth discovery and connection internally and do not support a Settings-page pairing flow.
For instructions, see the Android App Intents documentation.
If you need true runtime toggling
If you require the ability to enable the notification bar on demand and disable it after troubleshooting is complete, neither workaround above will meet your needs. Contact Esper Support to request dynamic notification bar control as a feature. This capability would need to be added to the Esper SDK or REST API.
Troubleshooting tips
- If a Blueprint change is not taking effect on your device, verify the device is online and check the convergence status in Devices & Groups → [Device Name] → Blueprint → Compliance State.
- Blueprint convergence is not instantaneous and requires the device to be reachable.
Still need help?
If these workarounds don't resolve your issue or you need assistance with your specific use case, submit a support ticket.
Please sign in to leave a comment.
Comments
0 comments