Fix bug 3395289 Use MODE_IN_COMMUNICATION to evaluate stream vol changes

When the user is in a phone or VoIP call, the volume keys should
 control the STREAM_VOICE_CALL volume. Before MODE_IN_COMMUNICATION
 was introduced to cover VoIP use cases, having an active VoIP call
 was determined by checking whether there was any track used the
 output stream STREAM_VOICE_CALL, which can give false positives.
This CL checks instead against the audio mode to see if
 MODE_IN_COMMUNICATION is selected to determine if a VoIP call
 is in progress.

This implies that applications that play on STREAM_VOICE_CALL
 shouldn't rely on that fact alone to expect the volume keys
 to control the STREAM_VOICE_CALL volume, and should instead,
 rely on the official mechanism for that:
   android.app.Activity.setVolumeControlStream(int)

Change-Id: Ia487951ea1684477aa3d522c9031fad484d8a40d
1 file changed