improve UI and add foreground service