ResultReceiver
Generic interface for receiving a callback result from someone. Use this by creating a subclass and implement onReceiveResult, which you can then pass to others and send through IPC, and receive results they supply with send.
Note: the implementation underneath is just a simple wrapper around a android.os.Binder that is used to perform the communication. This means semantically you should treat it as such: this class does not impact process lifecycle management (you must be using some higher-level component to tell the system that your process needs to continue running), the connection will break if your process goes away for any reason, etc.