我知道这看起来像是Android NotificationListenerService onNotificationPosted 两次触发的副本,并且NotificationListenerService onNotificationPosted() 当它是分组通知的一部分时为单个 Notification 多次调用,但我已经尝试了他们的解决方案,但它们似乎不起作用。
我想要做的就是拥有一个后台服务,该服务计算一个人通过电话收到的通知数量,然后将其写入文本文件。
它适用于短信和环聊通知(即每个通知只触发一次)但是当我使用 WhatsApp 和 Gmail 测试它时,它被触发两次,因此,对于每个 Gmail 通知,我的文本文件中有两行。
这是我的代码。任何帮助将不胜感激。
public class NotifCounterService extends NotificationListenerService {
public static String TAG = NotifCounterService.class.getSimpleName();
Date dateStart;
private Logger logger;
private Context mContext;
@Override
public void onCreate() {
Log.d(TAG, "Created");
logger = new Logger(TAG);
mContext = getApplicationContext();
}
@Override
public IBinder onBind(Intent intent) {
return super.onBind(intent);
}
@Override
public void onNotificationPosted(StatusBarNotification sbn) {
Log.d(TAG, "Notification has arrived");
Log.d(TAG, "ID: " + sbn.getId() …Run Code Online (Sandbox Code Playgroud)