Телефонный звонок Android - android.telecom.Call

Извините, если я допустил ошибку - это мой первый пост! Я также новичок в Android и Java.

Я пытаюсь написать приложение, которое позволит мне совершать вызовы и отслеживать состояние вызовов. Из того, что я нашел, "нормальный" способ сделать это выглядит примерно так: Intent intent = new Intent(Intent.ACTION_CALL); intent.setData(Uri.parse(uri)); startActivity(intent);

Используя эту технику, вы на самом деле не получаете указание на то, что на вызов ответили, что мне нужно знать для моего приложения. Я осмотрел другие решения и нашел класс android.telecom.Call. Похоже, это будет делать то, что мне нужно, но я не смог реализовать пример или найти его в Интернете. Может ли кто-нибудь помочь мне с этим или указать мне правильное направление? Заранее спасибо за любые советы и еще раз извинения, если я спросил в неправильном месте!

1 ответ

Я использую тот же код для звонка с намерением, как вы (но в xamarin). Вы можете контролировать состояние с PhoneStateListener

 public override void OnCallStateChanged(CallState state, string incomingNumber)
    {
        base.OnCallStateChanged(state, incomingNumber);
    }

Все, что вам нужно, это изменение состояния трека.

Вызов начался: CallState.Idle -> CallState.Offhook

Вызов завершен: CallState.Offhook -> CallState.Idle

Другие вопросы по тегам