如何以编程方式检查android中是否存在任何通知?

如何以编程方式检查android中是否存在任何通知?,android,notifications,Android,Notifications,有人知道我如何通过编程检查android中是否有任何通知吗 我想检查通知列表中当前是否有可用的通知 例如,如果有任何通知,则LED灯亮起,如果清除通知列表,则LED灯熄灭 我只想知道允许我们检查通知列表中是否有可用通知的条件或代码 如果(条件-有任何通知) //我的代码您可以使用Android 4.3+上提供的NotificationListenerAPI。要做到这一点,您只需创建一个简单的服务,该服务扩展NotificationListenerService 下面是一些示例代码 import

有人知道我如何通过编程检查android中是否有任何通知吗

我想检查通知列表中当前是否有可用的通知

例如,如果有任何通知,则LED灯亮起,如果清除通知列表,则LED灯熄灭

我只想知道允许我们检查通知列表中是否有可用通知的条件或代码

如果(条件-有任何通知)


//我的代码

您可以使用Android 4.3+上提供的
NotificationListener
API。要做到这一点,您只需创建一个简单的
服务
,该服务扩展
NotificationListenerService

下面是一些示例代码

import android.service.notification.NotificationListenerService;
import android.service.notification.StatusBarNotification;
import android.util.Log;

public class NLService extends NotificationListenerService {

    private String TAG = this.getClass().getSimpleName();

    @Override
    public void onCreate() {
        super.onCreate();
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }

    @Override
    public void onNotificationPosted(StatusBarNotification sbn) {

        Log.i(TAG, "Notification posted");
        Log.i(TAG, "ID :" + sbn.getId() + "t" + sbn.getNotification().tickerText + "t" + sbn.getPackageName());
    }

    @Override
    public void onNotificationRemoved(StatusBarNotification sbn) {
        Log.i(TAG, "Notification Removed");
        Log.i(TAG, "ID :" + sbn.getId() + "t" + sbn.getNotification().tickerText + "t" + sbn.getPackageName());
    }

}
一个完整的教程是可用的


在此版本的Android之前,您可以通过所述的

进行黑客攻击,以下是答案:[堆栈问题][1][1]:从4.3开始就有可能了+