I am adding ValueEventListener in my activity of android.I am worrying if my app crashes or anyhow, onDestroy isn't called then my listeners may not be removed manually.I also used system.exit in somewhere,I didn't used them in service though .now I am worrying if they aren't removed and my application is closed,will they be still connected and increase my firebase billing?
This is a 'yes but no' answer, according to the documentation, all listeners are registered on the server which invokes a trigger to send the updated information. Since the listener is not unregistered, it is therefore not 'removed'. Instead, the server will detect that the client has timed out after a few attempts and will stop sending requests.
Effectively they are the same thing, only delayed. relaunching the app will not reconnect to the listeners if the session ID does not match.