Итак, после дальнейшего изучения этого, я теперь уверен, что нет легкого пути для этого ...
Что я наконец-то сделал, так это прослушал намерение вещания ACTION_PHONE_STATE_CHANGED и NEW_OUTGOING_CALL и, когда я их получу, зарегистрируйте прикрепленное вещание (созданное мной), которое содержит дополнительный номер телефона и указание, является ли он входящим или исходящим вызовом , Я удаляю это липкое намерение, когда получаю ACTION_PHONE_STATE_CHANGED с CALL_STATE_IDLE).
Теперь, когда мне нужно узнать, есть ли активный вызов, я пытаюсь получить эту липкую трансляцию (registerReciever с нулевым получателем), и если есть доступная липкая, я могу получить номер телефона и указание входящего / исходящего звоните.
Одна вещь, которую все еще можно улучшить, - это лучшая обработка ожидающего вызова, поскольку ACTION_PHONE_STATE_CHANGED будет получен во время активного вызова, и я не могу сказать, какой из них активен ( см. Связанный вопрос )