2021-05-15 [RK3399][Android7.1] 调试笔记 ---显示参数动态设置接口

系统环境:

Platform: RK3399
OS: Android 7.1
Kernel: v4.4.83

接口代码所在位置为:

/frameworks/base/core/java/android/os/DisplayOutputManager.java

如图:


image.png

1. 设置背光亮度

public void setBrightness(int display, int brightness)
设置亮度,需调用 saveConfig()接口保存到分区里面;
display:屏幕 ID;
brightness:亮度;
取值范围 :[-128,127]
536         /*
537          * brightness: [-128, 127], default 0
538          */
539     /**
540      *
541      * @param display
542      * @param brightness
543      * @return
544      * @hide
545      */
546         public int setBrightness(int display, int brightness)
547         {
548                 if (brightness < -32 || brightness > 31) {
549                         Log.e(TAG, "setBrightness out of range " + brightness);
550                         return -1;
551                 }
552                 try {
553                         mService.setBrightness(display, brightness);
554                 } catch (Exception e) {
555                         Log.e(TAG, "Error set brightness :" + e);
556                         return -1;
557                 }
558                 return 0;
559         }
560

2. 设置对比度

 public void setContrast(int display, int contrast)
设置亮度,需调用 saveConfig()接口保存到分区里面;
display:屏幕 ID;
contrast:对比度;
取值范围:[0, 1.992]
default: 1

561         /*
562          * contrast: [0, 1.992], default 1;
563          */
564     /**
565      *
566      * @param display
567      * @param contrast
568      * @return
569      * @hide
570      */
571         public int setContrast(int display, float contrast)
572         {
573                 if (contrast < 0 || contrast > 1.992) {
574                         Log.e(TAG, "setContrast out of range " + contrast);
575                         return -1;
576                 }
577                 try {
578                         mService.setContrast(display, contrast);
579                 } catch (Exception e) {
580                         Log.e(TAG, "Error set Contrast :" + e);
581                         return -1;
582                 }
583                 return 0;
584         }

3. 设置色调

public void setHue(int display, int hue)
设置色调,需调用 saveConfig()接口保存到分区里面;
display:屏幕 ID;
hue:色调;
范围:[-30,30]
default: 0
611         /*
612          * degree: [-30, 30], default 0
613          */
614     /**
615      *
616      * @param display
617      * @param degree
618      * @return
619      * @hide
620      */
621         public int setHue(int display, float degree)
622         {
623                 if (degree < -30 || degree > 30) {
624                         Log.e(TAG, "Error set hue out of range " + degree);
625                         return -1;
626                 }
627                 try {
628                         mService.setHue(display, degree);
629                 } catch (Exception e) {
630                         Log.e(TAG, "Error set hue :" + e);
631                         return -1;
632                 }
633                 return 0;
634         }
635
636 }

4. 设置饱和度

public void setSaturation(int display, int saturation)
设置饱和度,需调用 saveConfig()接口保存到分区里面;
display:屏幕 ID;
saturation:饱和度;
范围:[0, 1.992], 
default: 1
561         /*
562          * contrast: [0, 1.992], default 1;
563          */
564     /**
565      *
566      * @param display
567      * @param contrast
568      * @return
569      * @hide
570      */
571         public int setContrast(int display, float contrast)
572         {
573                 if (contrast < 0 || contrast > 1.992) {
574                         Log.e(TAG, "setContrast out of range " + contrast);
575                         return -1;
576                 }
577                 try {
578                         mService.setContrast(display, contrast);
579                 } catch (Exception e) {
580                         Log.e(TAG, "Error set Contrast :" + e);
581                         return -1;
582                 }
583                 return 0;
584         }
585

5. 保存设置

public int saveConfig()
保存显示参数,配合 setBrightness,setContrast,setSaturation,setHue 使用,
调用这个接口后,相关的数据被写到了 baseparameter 分区。
/**
522      *
523      * @return
524      * @hide
525      */
526         public int saveConfig()
527         {
528                 try {
529                         return mService.saveConfig();
530                 } catch (Exception e) {
531                         Log.e(TAG, "Error save :" + e);
532                         return -1;
533                 }
534         }

你可能感兴趣的:(2021-05-15 [RK3399][Android7.1] 调试笔记 ---显示参数动态设置接口)