First you must declare your intent to receive notifications in your manifest, so that you can get the android.permission.BIND_NOTIFICATION_LISTENER_SERVICE
permission.
AndroidManifest.xml:
<service android:name=".NotificationListener"
android:label="@string/service_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
<intent-filter>
<action android:name="android.service.notification.NotificationListenerService" />
</intent-filter>
</service>
Then create a NotificationListenerService
class and override the onNotificationPosted
function.
For more information, read the developer reference here: https://developer.android.com/reference/android/service/notification/NotificationListenerService.html
Also look at this simple example application for implementation guidance: https://github.com/kpbird/NotificationListenerService-Example/