Как сделать видеозвонок программно на Android 2.2 или выше?

Я работаю над приложением, в котором хочу сделать видеозвонок программно. Я использую API уровня 8 для своего приложения.

У меня Samsung Galaxy S, где я могу использовать функцию видеозвонков. Используя действие намерения ACTION_CALL, я могу начать голосовой вызов.

Как начать видеозвонок? Какие дополнительные намерения я должен предоставить? Есть ли какое-либо конкретное поле, которое указывает, что текущий исходящий вызов является видеовызовом? Если да, как я могу настроить это поле, чтобы указать, что я хочу инициировать видеовызов?


person KavitaDev    schedule 19.08.2011    source источник
comment
Привет всем, я искал разные форумы, чтобы решить мою проблему. Я обнаружил, что Galaxy S позволяет нам совершать видеозвонки обычным способом. Я видел, что всякий раз, когда я делаю голосовой вызов, значение для поля com.phone.extra.calltype будет установлено на 1, а для видеовызова его значение будет установлено на 2. Это единственная разница. что я нашел. Можно ли установить поле com.phone.extra.calltype, чтобы указать, что новый вызов является видеовызовом? Если да, как я могу установить дополнительное поле com.phone.extra.calltype при размещении нового намерения вызова? Помогите пожалуйста мне. Любая помощь будет мне благодарна. Спасибо всем.   -  person KavitaDev    schedule 23.08.2011


Ответы (1)


Вот код для создания видеозвонка на моем Samsung Galaxy Tab (Android 2.2)

Intent callIntent = new Intent("com.android.phone.videocall");
callIntent.putExtra("videocall", true);
callIntent.setData(Uri.parse("tel:" + [your number goes here]));
activity.startActivity(callIntent);
person Alex    schedule 29.08.2011
comment
привет алекс. Большое тебе спасибо. Я дам ему попробовать. - person KavitaDev; 30.08.2011
comment
Здравствуйте, Алекс, я получаю сообщение android.content.ActivityNotFoundException: не найдена активность для обработки Intent {act=com.android.phone.videocall dat=tel:xxxxxxxxxx (есть дополнения)}. не могли бы вы мне помочь. Заранее спасибо. - person Amol Sawant 96 Kuli; 19.12.2013
comment
@AmolSawant96Kuli Привет. Это решение зависит от устройства. Ваше исключение означает, что ваше устройство не запросило пакет/активность. Единственное, что я могу посоветовать, это сделать видеозвонок с вашего реального устройства и просмотреть логкэт. Может быть, вы сможете сделать какой-то реверс-инжиниринг (это то, что я сделал для своего Galaxy Tab) - person Alex; 22.12.2013
comment
@AmolSawant96Kuli Попробуйте добавить намерение.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - person ; 11.04.2014
comment
Как установить лимит времени для видеозвонка - person NaVaNeeTh PrOdHutuR; 04.11.2014
comment
как напрямую сделать видеозвонок для Google Duo на конкретный телефон, здесь не указанный callIntent.setData(Uri.parse(тел: + [ваш номер здесь])); без отображения главного экрана приложений. - person Harsha; 06.02.2018