If I don't provide an activity to manage the lifecycle, and instead do it manually but never close the adapter by calling stopListening(), what happens?
In that case the listener will remain active until the app is closed, or the socket is killed by the operating system. You'll be wasting your user's bandwidth and battery life, downloading data that they never see.