My application relies on having a background service to run automatically once the app starts and continues to run even when the application goes to the background. Once the background service starts, a notification panel will be displayed with an 'exit' button. To stop the background service, user must quit the app (back button) or press the 'exit' button on the notification panel to stop the background service.

Is this an acceptable UX? Or do I need to create a 'toggle on/off' button on the main UI? I find that in most app, the user must explicitly do something to start the background service (i.e, press play or start navigating)

The closest similar app I see is how 'Waze' and 'Google Maps' behave. They'll display a notification panel with an exit button once user start navigation. However, both of them only show the notification panel once navigation started, and not when the application starts.

My app is a travel app that allows user to be notified whenever they are near an establishment. Once the app started (and the background service running), the app will determine their location and suggest to the user the nearest place of interest. Also, the app will prompt a notification to the user when an event (that the user might be interested with) occurred at a nearby location. Think 'Pokemon GO', but can run while the app is at the background or while the phone screen is off.

  • Can you mention the your app's concept ! I mean what it is for. Commented Dec 29, 2016 at 5:19
  • Updated question with app description Commented Dec 29, 2016 at 6:39
  • For this approach you should give notification with exit button. Because use won't be irritated if they don't want to see the suggestions or notification. For the remaining user who have no problem with the suggestion will continue to see. So in short give "Exit" button along with notification message. Commented Dec 29, 2016 at 6:46

1 Answer 1


The example apps you comment have an explicit button (/way) to turn on that service from inside the app and then a button/way to turn it off from the app and from the notification panel.

Activating the service as soon as the app is opened and only letting the user finish it when the app closes is not a good way to let the user be in control.

Not all users know/understand how to close an app, but they understand a turn on/off button.

This will depend on the exact case. However, I believe there is a difference between sending information to the notification center (like message received, etc) and tracking the user GPS position and giving information based on it. I'm sure Android and iOS have good resources as to what a developer can do with an app in the background and how. So maybe checking it might clarify how your app can interact with the user.

  • I've tried geofencing but the accuracy is horrible. So I'm forced to use a background service so that the app can function accurately while the screen is off. Commented Jan 3, 2017 at 3:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.