在系统信息(或命令行等效:system_profiler)中,我们可以检查显示是否内置:
Displays:
Color LCD:
Display Type: LCD
Resolution: 1680 x 1050
Pixel Depth: 32-Bit Color (ARGB8888)
Main Display: Yes
Mirror: Off
Online: Yes
Built-In: Yes
我应该使用哪种API来检查相同的信息?连接外部显示器时,应用程序需要禁用播放。 请注意,Mac上没有HDCP,因此禁用它是唯一的方法。 (DRM的东西,我讨厌)。
答案 0 :(得分:1)
使用CGDisplayIsBuiltin(_:)
方法:
返回一个布尔值,指示显示是否内置,例如便携式系统中的内部显示。
是Quartz Display Services的一部分:
Quartz Display Services包括访问器功能,用于报告显示硬件的当前属性,这些属性也可在当前显示模式中找到。由于这些功能不依赖于当前显示模式的信息,因此它们提供有关显示的最准确信息(显示模式属性可能会受到设备驱动程序的更改)。
<强>参考强>
CGDisplayIsBuiltin(_:) - Core Graphics | Apple Developer Documentation
Quartz Display Services - Core Graphics | Apple Developer Documentation
Quartz Display Services Programming Topics: Getting Information About Displays
GitHub - kfix/ddcctl: DDC monitor controls (brightness) for Mac OSX command line