Player superclass for handling AppOps features

Add a new class to group media/audio player features under one
 interface. Currently only used for audio-related AppsOps
 restrictions. In the future can group routing, audio focus
 handling by the framework...
MediaPlayer inherits from PlayerBase, and overrides the methods
 that are needed to delegate the handling of the restrictions
 in a separate class.
When AppOps restrictions change (as triggered through the
 callback in PlayerBase), reset the volume to its value intended
 by the application (when unmuting) or the framework (0 when
 enforcing the restriction).

Bug 28069414

Change-Id: I2f38e4b9b3c029778836868cf78f4d15d7603247
3 files changed