gpt4 book ai didi

java - Android studio - 读取whatsapp通知问题

转载 作者:行者123 更新时间:2023-11-30 05:02:44 26 4
gpt4 key购买 nike

我正在开发一个 Android 应用程序,其中一部分需要通过通知读取 WhatsApp 消息并对其进行分析。我正在使用 NotificationListenerService 并且它正在工作,但是,当我收到通知然后从其他聊天中收到消息时,我遇到了通知被“分析”两次的问题。

我想要的是每条消息(Notification)分析一次。

我已经尝试将通知 sortKey 或 StatusBarNotification 键保存在 HashSet 中,然后检查它是否每次都包含该键,但这不起作用。

这是 onNotificationPosted 函数中的代码 -

String pack = sbn.getPackageName();
if (pack.equals("com.whatsapp")) {
Bundle extras = sbn.getNotification().extras;

if (extras.getCharSequence("android.text") != null && extras.getString("android.title") != null) {

if (sbn.getNotification().getSortKey() != null) {
String title = extras.getString("android.title");
String text = extras.getCharSequence("android.text").toString();

//Checking if it's from specic group and analyzing the message and
//doing what needs to be done, not related to the problem.

}
}
}

我想要的结果是每个通知都将被分析一次,如果其他消息到达其他聊天则不会再次发布

最佳答案

在不了解 WhatsApp 的内部工作原理的情况下,很难说出您确切应该做什么,因为它们似乎将 Actions/Extras 重复用于各种事情(无论如何这是有道理的)。

但在这种情况下,您可以保留一份您已经“分析”过的列表/ map ,如果您再次获得它,请将其丢弃。

关于java - Android studio - 读取whatsapp通知问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57944742/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com