AVRCP: Thread-safe mHandler invocation

* Handler object may become null between null check and actual
invocation if using an instance private variable.

* The solution to this problem without locking is to assign existing
handler variable to a local final variable before the null check.

* Make sure that handler is not null before invoking the handler.

* In AvrcpMessageHandler.handleMessage(), replace mHandler with this.

* In doQuit(), replace Loop.quit() with Loop.quitSafely().

Bug: 64566509
Test: Manual, test AVRCP with carkit. Shortly after disconnecting the
AVRCP service, try remote control commands.
Change-Id: Ib5ac399a30a5cefb17b3977103dea3d60e855cef
1 file changed