iOS检测系统音量级别更改.私有API与否?AVSystemController_SystemVolumeDidChangeNotification

Ale*_*nko 9 avfoundation iphone-privateapi appstore-approval nsnotificationcenter ios

是否可以AVSystemController_SystemVolumeDidChangeNotification在使用私有API时(在App Store审核过程中)考虑收听NSNotification?

在我的应用程序中,我需要显示和更新当前的音量级别.在按下硬件音量按钮后和MPVolumeView滑块中的音量更改后,应更新音量指示器.

我搜索了解决方案如何获得硬件按钮按下的通知或事件,并找到了许多解决方案.

例如, 按iPhone检测音量键.

如何在iOS上获得音量级别和音量更改通知?

我喜欢听NSNotificationCenter的解决方案,似乎最简单明了的解决方案是听AVSystemController_SystemVolumeDidChangeNotification(并且工作正常)

但是我确实想知道一件重要的事情.

此通知名称未出现在任何Apple官方文档中,并且有关于此通知用法是否将被视为"使用私有API"的讨论.

据我所知,使用私有API与调用私有方法相关联.这就是为什么使用这个通知密钥不能被视为私有API使用(因为实际上我们使用通知名称作为NSString).

也许有人肯定知道这一点,或者有使用AVSystemController_SystemVolumeDidChangeNotification和app的经验被提交/拒绝?

非常感谢任何信息!

ada*_*oto 0

我知道评论中提到了使用 KVO 的替代方法。评论中也讨论了这种方法的局限性。NSNotificationCenter最初的问题是关于使用和的体验AVSystemController_SystemVolumeDidChangeNotification。我在我的应用程序中使用了这种方法,并且没有被拒绝。它可以在 App Store 上找到。