gpt4 book ai didi

java - 在NotificationListenerService中过滤应用程序

转载 作者:行者123 更新时间:2023-12-01 13:15:42 26 4
gpt4 key购买 nike

我正在使用 NotificationListenerService 从通知中检索信息。实际上,我只能在 TextView 中显示我在通知栏中看到的最后一条通知。如果可能的话,我想过滤此方法并仅显示 Whatsapp 通知。我可以获取包名称并将其显示在日志中,但我不知道我做了过滤器。这是NotificaionListenerService的一部分

public void onNotificationPosted(StatusBarNotification sbn) {
Notification mNotification=sbn.getNotification();
if (mNotification!=null){
Bundle extras = mNotification.extras;

Intent intent = new Intent(MainActivity.INTENT_ACTION_NOTIFICATION);
intent.putExtras(mNotification.extras);
sendBroadcast(intent);

TAG = "onNotificationPosted";
Log.i(TAG,"Package Name" + sbn.getPackageName());

Notification.Action[] mActions=mNotification.actions;
if (mActions!=null){
for (Notification.Action mAction:mActions){
int icon=mAction.icon;
CharSequence actionTitle=mAction.title;
PendingIntent pendingIntent=mAction.actionIntent;
}
}
}
}

其中我可以看到创建通知的应用程序的包名称。我必须在那里制作过滤器吗?我该怎么做?谢谢

最佳答案

就像这样做一样简单:

if("com.the.package.name.you.want.to.filter".equals(sbn.getPackageName())) {
//Do something
}

或者如果有多个,您可以将它们放在 HashMap 或列表中,然后查看包是否是否在其中。

关于java - 在NotificationListenerService中过滤应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22494397/

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