Как программно провести телефонный звонок? - PullRequest
0 голосов
/ 19 октября 2018

У меня есть приложение для видеоконференций.Мое приложение обрабатывает, когда другое приложение вызывает, и у меня есть audioFocusChange:

  AudioManager.OnAudioFocusChangeListener onAudioFocusChangeListener = new AudioManager.OnAudioFocusChangeListener() {
    @Override
    public void onAudioFocusChange(int focusChange) {
        Log.i("", "microphoneTEST focus change is: " + focusChange);
        if (focusChange == -2 || focusChange == -1) {
            Log.i("", "microphoneTEST focus change is: ENTERED HERE+ " + speakerMuted);
            LmiAudioCapturer.pause();
            if (!speakerMuted)
                speakerView.performClick();
            doReInit = true;
        }
        if (focusChange == 1) {
            if (doReInit) {
                LmiAudioCapturer.resume();
                if (audioManager != null)
                    audioManager.setSpeakerphoneOn(true);
                doReInit = false;
                if (speakerMuted)
                    speakerView.performClick();
            }
        }
    }
};

Но это не работает в начале.Мой случай таков: 1. На моем телефоне работает телефонный звонок 2. Я пытаюсь запустить свое приложение.Что приводит к тому, что мое приложение не имеет звука, потому что фокус звука был установлен на телефонный звонок.Что я хочу сделать, это установить мой телефонный звонок на OnHold, когда я начинаю свою конференцию.Так что это может инициировать аудио.и затем пользователь может вернуться к вызову, и это сработает.

Можно ли в любом случае перевести телефонный вызов в режим удержания из моего приложения?

...