自动回复whatsapp消息的方法

时间:2017-10-17 11:02:55

标签: android android-notifications whatsapp

我在Play商店看到很少有支持WhatsApp自动回复的应用程序,我搜索了互联网以找出方法,但我找到的只是这段代码

    Uri uri = Uri.parse("smsto:" + "99********");
    Intent i = new Intent(Intent.ACTION_SENDTO, uri);
    i.putExtra("sms_body", "Hey!");
    i.setPackage("com.whatsapp");
    startActivity(i);

如果您已保存,它将打开WhatsApp并带您到该特定联系人,它将粘贴给定文本,但不会发送消息。

链接

https://play.google.com/store/apps/details?id=tkstudio.wachatbotlite&hl=en https://play.google.com/store/apps/details?id=androidpills.com.whattoreply&hl=en

他们正在访问通知以获取消息。我想知道他们如何在不打开应用程序的情况下在后台发送消息。如果有人知道这种方法,请在这里分享。

4 个答案:

答案 0 :(得分:3)

在较新版本的WhatsApp和Android操作系统中,您可以直接从通知中回复,这就是应用程序的行为方式。可能与您发布的代码无关。因此,如果您想实现自动回复,您必须处理通知,并牢记Android操作系统版本限制

编辑:检查this post以使用辅助功能读取通知

答案 1 :(得分:2)

我这样做是

步骤1:复制NotificationHelperLibrary存储库中的所有代码。
步骤2:创建Notification Listener Service,并将下面的代码放入onNotificationPosted(..)方法中:

MyNotifiService.this.cancelNotification(sbn.getKey());
Action action = NotificationUtils.getQuickReplyAction(sbn.getNotification(), getPackageName());

if (action != null) {
    Log.i(TAG, "success");
    try {
        action.sendReply(getApplicationContext(), "Hello");
    } catch (PendingIntent.CanceledException e) {
        Log.i(TAG, "CRAP " + e.toString());
    }
} else {
    Log.i(TAG, "not success");
}

This is一个基本演示。

答案 2 :(得分:0)

Whatsapp消息包含Car Extension。您可以使用它来获取需要回复消息的相应PendingIntent。

Bundle extension = NotificationCompat.getExtras(notification).getBundle("android.car.EXTENSIONS");
Bundle conversation = extension.getBundle("car_conversation");
PendingIntent reply = conversation.getParcelable("on_reply");

答案 3 :(得分:0)

在较新版本(> = Android 7)中,我们能够直接从notificationlistener回复通知(我已经测试过它适用于所有带有用户多个消息的消息传递应用程序)

此链接对于此=> link

很有用

对于较早的版本,我们可以从可穿戴通知中获取通知操作。 有关更多信息,请参见此:-link

以上文章的源代码:-link