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.