Use a generic StringReciever interface instead of On*Listener garbage