Check if in-call via audio manager

This commit is contained in:
M66B
2022-01-10 18:18:40 +01:00
parent b8a21847e2
commit 4a5d6be29b
2 changed files with 22 additions and 0 deletions

View File

@@ -2,6 +2,7 @@ package eu.faircode.email;
import android.content.Context;
import android.media.AudioAttributes;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.Uri;
@@ -49,4 +50,18 @@ public class MediaPlayerHelper {
Log.w(ex);
}
}
static boolean isInCall(Context context) {
AudioManager am =
(AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
if (am == null)
return false;
// This doesn't require READ_PHONE_STATE permission
int mode = am.getMode();
EntityLog.log(context, "Audio mode=" + mode);
return (mode == AudioManager.MODE_RINGTONE ||
mode == AudioManager.MODE_IN_CALL ||
mode == AudioManager.MODE_IN_COMMUNICATION);
}
}