检测传入的VoIP电话Android

当用户收到Viber / Skype / WhatsApp电话时,我想关闭我的应用程序。 我试图使用AudioFocus监听器和Notification解析,它们都不是很好。 可能有其他方法可以帮助我吗?

在音频管理器中检查MODE_IN_COMMUNICATION应该实现这一点。 https://developer.android.com/reference/android/media/AudioManager.html#MODE_IN_COMMUNICATION

public static boolean isVoip(Context context){ AudioManager manager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE); if(manager.getMode()==AudioManager.MODE_IN_COMMUNICATION){ return true; } else{ return false; } }