我正在为Android上的通知构建基础结构,一旦创建了NotificationChannel,似乎该通道仍然存在,而我的应用程序通过编译,安装和强制停止一遍又一遍被杀死并重新启动
NotificationChannels何时死亡?仅在设备重启时?
我已经在我的代码中创建了一个这样的频道:
private void createNotificationChannel() {
// Create the NotificationChannel, but only on API 26+ because
// the NotificationChannel class is new and not in the support library
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O)
return;
NotificationChannel channel = new NotificationChannel(NOTIFICATION_CHANNEL_ID, NOTIFICATION_CHANNEL_NAME, NotificationManager.IMPORTANCE_HIGH);
channel.setDescription(NOTIFICATION_CHANNEL_DESCRIPTION);
mNotificationManager.createNotificationChannel(channel); // Register the channel with the system; you can't change the importance or other notification behaviors after this
}
然后,我删除了频道创建代码,重新编译并重新安装,然后使用评估表达式来查看我创建的频道是否存在,如下所示:
mNotificationManager.getNotificationChannel("NotificationChannelId") != null
...通道仍然存在!我的问题是,在重新编译并重新安装之后,通道仍然存在并且仍然存在,并且我无法为客户端引发运行时异常开发人员,因为未创建频道时无法正确检测。 我已确保我的apk已构建并安装了所有更改(表示更改并未创建通道),但该通道仍然存在。
即使应用程序死后该通道仍然存在,如何检测到该通道仍未创建?