Fix ANR due to long wait for synchronization lock

Use Case: Repeated BT ON/OFF

Failure: ANR occurs due to UI wait for long time waiting
to acquire thread lock.

Steps: Repeated BT ON/OFF

Root Cause: The synchronized function that updates state
also read paired devices as an additional operation. When
the number of devices is cached list is large, the block
time for other threads waiting for same lock tends to
increase causing ANR.

Fix: Limited the synchronized block to the part where
actual update of local state takes place.

Test: SNS Testing

Bug: 35412140

Change-Id: I69ff9f8a032b3772bf3d048d8db70181319ad31d
1 file changed