问题描述
我想使用QuickTime Player阻止每个应用的屏幕录制或视频输出。
I want to block screen recording or video output per my app using QuickTime Player.
我已经检测到hdmi输出和airplay与 UIScreen
。
但是没有检测到QuickTime Player视频录制。
I had detected hdmi output and airplay with UIScreen
.But QuickTime Player video recording was no detect.
如何检测QuickTime播放器?
How to detect QuickTime Player?
谢谢。
推荐答案
因此不知道检测QuickTime播放器的录音。
Thus don't know detect QuickTime Player recording.
但是我找到了一个解决方法。
But I Found a solution with some trick.
如果正在运行QuickTime Player录制,AVAudioSession的输出portType已更改为HDMI输出。
If QuickTime Player recording is running, AVAudioSession's output portType has been changed to HDMIOutput.
所以我编码如下......(Swift 2.2)
So I coding as follows...(Swift 2.2)
func checkOutputPortType() {
let asRoute = AVAudioSession.sharedInstance().currentRoute
for output in asRoute.outputs {
if output.portType == AVAudioSessionPortHDMI {
// something you want..
}
}
}
在ViewDidLoad中插入该函数并添加 AVAudioSessionRouteChangeNotification
通知。
Insert that function in ViewDidLoad and added AVAudioSessionRouteChangeNotification
notification.
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(checkOutputPortType), name: AVAudioSessionRouteChangeNotification, object: nil)
谢谢。
这篇关于iOS使用QuickTime播放器检测/阻止屏幕录制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!