幼敏悟过人,读书辄成诵。这篇文章主要讲述如何从Delphi Android应用程序启动视频通话?相关的知识,希望能为你提供帮助。
我正在寻找一种方法从我用Delphi 10.3编写的android应用程序开始视频通话。为此,我想将Android意图用于第三方应用程序(WhatsApp或Skype)。
这是我已经尝试过的。我使用123
作为联系人ID,期望即使它不是有效的ID,WhatsApp仍然应该打开并警告:
基于https://stackoverflow.com/a/38674897- 没有任何反应
Intent := TJIntent.Create;
Intent.setAction(TJIntent.javaClass.ACTION_VIEW);
Intent.setData(StrToJURI('content://com.android.contacts/data/123'));
Intent.setType(StringToJString('vnd.android.cursor.item/vnd.com.whatsapp.voip.call'));
基于https://stackoverflow.com/a/46049004- 没有任何反应
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
Intent.setData(StrToJURI('content://com.android.contacts/data/123'));
Intent.setType(StringToJString('vnd.android.cursor.item/vnd.com.whatsapp.video.call'));
Intent.setPackage(StringToJString('com.whatsapp'));
修复建议不使用SetType https://stackoverflow.com/a/28244207- 没有任何反应
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
Intent.setDataAndType(
StrToJURI('content://com.android.contacts/data/123'),
StringToJString('vnd.android.cursor.item/vnd.com.whatsapp.video.call'));
Intent.setPackage(StringToJString('com.whatsapp'));
基于https://stackoverflow.com/a/14294299的Skype代码示例 - 它打开Skype,但第一次尝试时不打开聊天/通话。如果我在后台打开Skype时切换到我的应用程序,第二次尝试它将启动视频通话。
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
//Intent.setData(StrToJURI('skype:username?call&
video=true'));
Intent.setData(StrToJURI('skype:username'));
尝试
videocall
动作 - 弹出一条消息“未找到接收者”Intent := TJIntent.Create;
Intent.setAction(StringToJString('com.android.phone.videocall'));
Intent.setData(StrToJURI('skype:username'));
Intent := TJIntent.Create;
Intent.setAction(StringToJString('com.android.phone.videocall'));
Intent.setData(StrToJURI('tel:123456789'));
所有意图都执行:
if MainActivity.getPackageManager.queryIntentActivities(Intent, TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY).size >
0 then
MainActivity.startActivity(Intent)
else
ShowMessage('Receiver not found');
如何使用Delphi编写的Android应用程序进行视频通话?
答案它不是特定于dephi的问题。您的代码即使在java中也不起作用。(它显示未找到接收者)
【如何从Delphi Android应用程序启动视频通话()】请参阅以下内容。他们在java中,但我猜他们可以指出你正确的道路
- android-make whatsapp call
- Android: Retrieve contact name from phone number
- https://developer.android.com/training/permissions/requesting#java
推荐阅读
- 使用循环或lapply来读取和命名文件
- R(试图理解逻辑以用lapply()替换循环)
- JSON Web Token教程(Laravel和AngularJS中的示例)
- 使用AngularJS和Play框架构建现代Web应用程序
- 使用Spring框架构建MVC应用程序(初学者教程)
- Gulp的JavaScript自动化简介
- 这些年来,世界仍然由C编程提供动力
- 使用Angular Material构建超现代的Web应用
- 用JavaScript编写可测试的代码(简要概述)