According to Firestore documentation, we can simply add and remove snapshotListener automatically just by passing the instance of Activity to the snapshotListener. But the snapshotListener can only be removed onStop. onStop() is not guaranteed to be called all the time. Should I add/remove my snapshotListener onResume/onPause instead?