我有一个类作为 AVPlayer 的包装器,它的功能之一是在播放期间每 1 秒和 10 秒发布一次通知(即addPeriodicTimeObserverForInterval:
在一般情况下更方便)。
以前,我通过此通知发送的对象是播放器包装器本身(即 ABPlayer.sharedPlayer)。今天我需要允许一些对象只接收有关特定媒体项目播放的通知。这可以通过[[someAVURLAsset URL] absoluteString]
作为通知对象发送来完成(当然,当 中的资产AVPlayer
是AVURLAsset
时)。
提示的问题是:在不同情况下使用不同类型的对象发布单个通知是否合适?我了解发送特定对象或发送nil
(包罗万象)的价值,但我不记得看到可以发送替代类型对象的情况。不过,就我而言,这似乎是有道理的。
我可以简单地发送两个不同的通知,但由于这些通知总是只被发送以通知观察者一个事件,并且它们总是从代码中的同一个位置发送,它们只是感觉就像一个单一的通知。
我意识到我所拥有的一切是可能的并且有效,但我很好奇是否有充分的理由来避免这种模式。