在将应用程序过渡到Android O时,我注意到一件奇怪的事情。有时我的前台服务通知会进入一个我没有创建的通道,称为“未分类”。我不知道这种情况是如何发生的。
通道总是在通知开始发布之前创建的,并且通道的ID是正确的。我已经尝试将随机字符串作为通道ID,看看是否可以重现这个问题,但在这种情况下,通知就是不会发布。所以当通道之前已经创建时,这似乎是一些奇怪的情况。
这是频道的页面:
x1c 0d1x的数据
这是出现在应用程序的所有频道列表中的频道(注意,出于隐私原因,我已经删除了图标)。
的
有没有人对此有任何经验,他们能解释一下什么时候会发生这种情况吗?不幸的是,我没有找到关于这方面的文档,在Google I/O会谈中也没有听到任何关于它的消息。
3条答案
按热度按时间bkhjykvo1#
我认为这就是如果你的应用程序的一部分不支持通知通道的情况。
特别是在我们的例子中,如果我们的SDK支持通知通道,但应用程序的目标是25并使用传统功能。我们将始终让传统应用程序通知转到未分类通道。
我可以想象还有其他情况下,操作系统决定你需要这个通道,因为操作系统认为不是所有的东西都被正确迁移了。你有一个26的目标SDK为整个应用程序强制26.0.1支持库吗?
iyfamqjs2#
当我在我的应用中将我的目标SDK更改为API Level 27时,我不再看到Uncategorized类别。
vql8enpb3#
将
minSDK
更改为**>=**API Level 26
时,不再创建“未分类”通知通道。我通过手动尝试不同的minSDK值发现了这个结果。(我最初将
minSDK
设置为API级别24)build.gradle文件:
字符串