Visualizer: Ensure multi-thread safety

Add @GuardedBy annotations and ensure they are met when
doing an ErrorProne build.

Refactored Java code to simplify handling messages
from the native code by using 'Handler.post' with
Runnable instances.

Bug: 149375271
Bug: 151442554
Test: RUN_ERROR_PRONE=true m framework-minus-apex
      check warnings for Visualizer class
Test: run EffectsTest for Visualizer both in single
      threaded and multi-threaded usage scenarios,
      validate there are no lockups in the app
      and no messages from FORTIFY in the log
Change-Id: I50752fad02f2a23ed8d0368b2550dbf7f879a706
Merged-In: I50752fad02f2a23ed8d0368b2550dbf7f879a706
2 files changed