簡體   English   中英

如何檢測iOS屏幕是OLED?

[英]How to detect iOS Screen is OLED?

在LED屏幕上,通常使用灰黑色(幾乎是黑色)。 但是,在iPhone X的OLED屏幕上,這並不可行。 純黑是我想要的。

有沒有辦法檢測屏幕是否為OLED類型? (而不是檢查它是否是iPhone X)

還有沒有辦法在情節提要中區分屏幕類型?

您可以嘗試將displayConfiguration消息發送到UIScreen mainScreen實例,並獲得對FBSDisplayConfiguration結構的訪問權限,但是我不確定,如果將此代碼發送到App Store,該代碼是否會被批准:

UIScreen *mainScreen = [UIScreen mainScreen];
SEL selector = NSSelectorFromString(@"displayConfiguration");
id displayConfiguration = [mainScreen performSelector:selector];

這是我的iPhone SE的displayConfiguration

<FBSDisplayConfiguration: 0x1c417fec0; Main; mode: "320x568@2x 60Hz sRGB SDR"> {
    CADisplay.name = LCD;
    CADisplay.deviceName = primary;
    CADisplay.seed = 2;
    tags = 0;
    currentMode = <FBSDisplayMode: 0x1c4094d70; 320x568@2x (640x1136/2) 60Hz sRGB SDR>;
    safeOverscanRatio = {0.89999997615814209, 0.89999997615814209};
    nativeCenter = {320, 568};
    pixelSize = {640, 1136};
    bounds = {{0, 0}, {320, 568}};
    CADisplay = <CADisplay:LCD primary>;
}

看來 CADisplay也是私有API的一部分。

PS:如果您有,我沒有能力在iPhone X上測試這些代碼,請讓我知道CADisplay.name值。 我也很有趣:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM