tree 1053e954ec800d311e3c96b56b603172f56c16b4
parent 7d669069392ab90d49ede2df851c070cc84d59a7
author William Escande <wescande@google.com> 1655855526 -0700
committer William Escande <wescande@google.com> 1655855526 -0700

Follow error prone recommendation

```
ObexServerSockets.java:228: warning:
BluetoothSocket is final and does not override Object.toString
            Log.d(mTag, "onConnect() socket: " + conSocket);
                                                 ^
BluetoothPbapService.java:767: warning:
 BluetoothSocket is final and does not override Object.toString
                    + " socket=" + socket);
                                   ^

AvrcpCoverArtService.java:256: warning:
 BluetoothSocket is final and does not override Object.toString
         debug("onConnect() - device=" + device + ", socket=" + socket);
                                                                   ^
PbapClientConnectionHandler.java:377: warning:
 BluetoothSocket is final and does not override Object.toString
                    Log.d(TAG, "Closing socket" + mSocket);
                                                  ^
 [...]
    (see https://errorprone.info/bugpattern/ObjectToString)
```

Bug: 236759221
Test: m RUN_ERROR_PRONE=true Bluetooth
Change-Id: I6a49a8ef8c6b380547cbb817468fa33bf89347a3
