java - 如何检查 Whatsapp 视频通话的 Intent Activity 状态

标签 java android whatsapp

我正在 Activity 中使用 WhatsApp 调用创建 Intent(),但我不知道如何查看此调用所处的状态。

我想知道它是否正在调用或是否已完成调用并重试。

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
String data = "content://com.android.contacts/data/" + Long.toString(_ID);
String type = "vnd.android.cursor.item/vnd.com.whatsapp.video.call";
intent.setDataAndType(Uri.parse(data), type);
intent.setPackage("com.whatsapp");
startActivityForResult(intent, REQUEST_CODE);

我尝试查看状态用户“onActivityResulty”,但如果您不接听电话,则此事件不会执行,我猜这是因为通话仍未结束,因为在 Whatsapp 内给了我再次调用此电话的选项.

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
    super.onActivityResult(requestCode, resultCode, intent);
    // Create Intent() / Call again
}

目标是确保当通话结束或空闲时,应用程序只会自动回拨。

如果您能给我一些帮助,我将不胜感激。

谢谢

最佳答案

我尝试在我开发过的应用程序之一中实现类似的功能。

我并没有主要关注实现whatsapp调用,但我想在用户挂断电话时处理我的应用程序,所以我尝试了这个。

private class VoiceCallListener implements CallListener {
    @Override
    public void onCallEnded(Call endedCall) {
        //call ended by either party
    }

    @Override
    public void onCallEstablished(Call establishedCall) {
        //incoming call was picked up
    }

    @Override
    public void onCallProgressing(Call progressingCall) {
        //call is ringing
    }

    @Override
    public void onShouldSendPushNotification(Call call, List<PushPair> pushPairs) {
        //don't worry about this right now
    }
}

可以引用这个page如果您想了解有关实现的更多信息,因为它提供了如何实现调用的非常通用的概述,请告诉我这是否有帮助。

完整的代码可以在 page 上找到。

关于java - 如何检查 Whatsapp 视频通话的 Intent Activity 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59399713/

相关文章:

java - 对嵌入实体的唯一约束?

java - Spring : How to retrieve set of entities using JpaRepository method without using the primary key?

java - 无法在 Android Studio 中打开布局

android - 我怎样才能在 Kotlin 中简化这个单例?

php - 如何使用 PHP 设置新​​的 Google Cloud Messaging API 服务器实现和托管?

html - whatsapp html 链接不适用于 iphone 8,chrome

android - 将 WhatsAPI/Yowsup 集成到 Android 中

java - 平台默认字符编码如何影响跨平台性能

android - 如何反转Android中列表的顺序?

android - 如何在完成时从最近的应用程序列表中删除 Activity ?