Телефонный звонок 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