gpt4 book ai didi

java - Android - 使用 NotificationListener 服务接收日历提醒通知

转载 作者:行者123 更新时间:2023-11-30 00:28:20 26 4
gpt4 key购买 nike

我在使用 NotificationListener 服务时遇到两个问题

  1. 我在我的应用程序中使用了 NotificationListenerService 类。此监听器 #onNotificationPosted 方法接收所有通知。

我的代码如下

public class MyListener extends NotificationListenerService 
{
public void onNotificationPosted(StatusBarNotification statusBarNotification)
{
//Receive all notification.
// I need to receive reminder notification only
}
//.....
......
}
//My Manifiest like below
<service
android:name=".MyListener"
android:enabled="true"
android:label="@string/app_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
<intent-filter>
<action android:name="android.service.notification.NotificationListenerService"/>
</intent-filter>
</service>

但我只需要接收日历提醒通知。

如何添加过滤器只接收日历提醒通知?

  1. 当我打开通知访问权限时,它会显示以下消息

    允许 MyApp 的通知访问?

    MyAPP 将能够读取所有通知,包括个人通知联系人姓名和您发送的消息文本等信息收到。它还将能够关闭通知或触发操作它们包含的按钮

如何更改通知访问对话框中的上述消息?

最佳答案

How to add filter to receive calendar reminder notification only ?

public class ReminderListenerService extends NotificationListenerService {

private static final String CALENDAR_PKG = "com.google.android.calendar";

@Override
public void onNotificationPosted(StatusBarNotification sbn) {
final Notification noti = sbn.getNotification();
// Filter for the Calendar application
final boolean isCalendar = CALENDAR_PKG.equals(sbn.getPackageName());
// Filter for Notification.CATEGORY_REMINDER (API 23+)
final boolean isReminder = Notification.CATEGORY_REMINDER.equals(noti.category);
// Retrieve the reminder
final String reminder = noti.extras.getString(Notification.EXTRA_TITLE);
}

}

Lollipop

就 Google 日历应用而言,我不确定如何在 Lollipop 中过滤提醒。 Notification.CATEGORY_EVENT被用来代替类似 NotificationCompat.CATEGORY_REMINDER 的东西.

How to change the above message in notification access dialog ?

你不能。但是您可以显示自己的对话框来解释为什么需要访问权限,然后使用以下方法将用户引导至通知监听器设置:

startActivity(new Intent(Settings.ACTION_NOTIFICATION_LISTENER_SETTINGS)

关于java - Android - 使用 NotificationListener 服务接收日历提醒通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44960759/

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