Android所有版本修改为线性亮度、默认亮度修改为50%

系统亮度修改为线性亮度

Android9修改方式

diff --git a/ap/frameworks/base/core/res/res/values/config.xml b/ap/frameworks/base/core/res/res/values/config.xml
old mode 100644
new mode 100755
index 3536b37..a254534
--- a/ap/frameworks/base/core/res/res/values/config.xml
+++ b/ap/frameworks/base/core/res/res/values/config.xml
@@ -1232,7 +1232,8 @@
 
     <!-- Minimum screen brightness setting allowed by the power manager.
          The user is forbidden from setting the brightness below this level. -->
-    <integer name="config_screenBrightnessSettingMinimum">10</integer>
+       <!-- hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) -->
+    <integer name="config_screenBrightnessSettingMinimum">1</integer>
 
     <!-- Maximum screen brightness allowed by the power manager.
          The user is forbidden from setting the brightness above this level. -->
diff --git a/ap/vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/display/BrightnessLevelPreferenceController.java b/ap/vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/display/BrightnessLevelPreferenceController.java
old mode 100644
new mode 100755
index 4bb0a99..0cf022d
--- a/ap/vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/display/BrightnessLevelPreferenceController.java
+++ b/ap/vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/display/BrightnessLevelPreferenceController.java
@@ -32,7 +32,7 @@ import android.support.annotation.VisibleForTesting;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
 import android.util.Log;
-
+import android.util.MathUtils;//hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) behin
 import com.android.settings.core.PreferenceControllerMixin;
 import com.android.settingslib.core.AbstractPreferenceController;
 import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -128,11 +128,11 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr
     private double getCurrentBrightness() {
         final int value;
         if (isInVrMode()) {
-            value = convertLinearToGamma(System.getInt(mContentResolver,
+            value = convertLinearToGammaExt(System.getInt(mContentResolver,
                     System.SCREEN_BRIGHTNESS_FOR_VR, mMaxBrightness),
                     mMinVrBrightness, mMaxVrBrightness);
         } else {
-            value = convertLinearToGamma(Settings.System.getInt(mContentResolver,
+            value = convertLinearToGammaExt(Settings.System.getInt(mContentResolver,
                     System.SCREEN_BRIGHTNESS, mMinBrightness),
                     mMinBrightness, mMaxBrightness);
 
@@ -160,4 +160,11 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr
         }
         return false;
     }
+       //hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) behin
+       private final int convertLinearToGammaExt(int val, int min, int max) {
+      // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
+       final float normalizedVal = MathUtils.norm(0, max, val);
+       return (int) (normalizedVal*GAMMA_SPACE_MAX);
+   }
+   //hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) end
 }
diff --git a/ap/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/settings/BrightnessController.java b/ap/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/settings/BrightnessController.java
old mode 100644
new mode 100755
index be0aa11..25ea5c9
--- a/ap/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/settings/BrightnessController.java
+++ b/ap/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/settings/BrightnessController.java
@@ -19,7 +19,7 @@ package com.android.systemui.settings;
 import static com.android.settingslib.display.BrightnessUtils.GAMMA_SPACE_MAX;
 import static com.android.settingslib.display.BrightnessUtils.convertGammaToLinear;
 import static com.android.settingslib.display.BrightnessUtils.convertLinearToGamma;
-
+import android.util.MathUtils;
 import android.animation.ValueAnimator;
 import android.content.ContentResolver;
 import android.content.Context;
@@ -373,7 +373,7 @@ public class BrightnessController implements ToggleSlider.Listener {
             setting = Settings.System.SCREEN_BRIGHTNESS;
         }
 
-        final int val = convertGammaToLinear(value, min, max);
+        final int val = convertGammaToLinearExt(value, min, max);
 
         if (stopTracking) {
             MetricsLogger.action(mContext, metric, val);
@@ -445,7 +445,7 @@ public class BrightnessController implements ToggleSlider.Listener {
             min = mMinimumBacklight;
             max = mMaximumBacklight;
         }
-        if (val == convertGammaToLinear(mControl.getValue(), min, max)) {
+        if (val == convertGammaToLinearExt(mControl.getValue(), min, max)) {
             // If we have more resolution on the slider than we do in the actual setting, then
             // multiple slider positions will map to the same setting value. Thus, if we see a
             // setting value here that maps to the current slider position, we don't bother to
@@ -453,7 +453,7 @@ public class BrightnessController implements ToggleSlider.Listener {
             // change to the user even though it isn't one.
             return;
         }
-        final int sliderVal = convertLinearToGamma(val, min, max);
+        final int sliderVal = convertLinearToGammaExt(val, min, max);
         animateSliderTo(sliderVal);
     }
 
@@ -475,5 +475,18 @@ public class BrightnessController implements ToggleSlider.Listener {
         mSliderAnimator.setDuration(SLIDER_ANIMATION_DURATION);
         mSliderAnimator.start();
     }
+//hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) behin
+private final int convertGammaToLinearExt(int val, int min, int max) {
+        final float normalizedVal = MathUtils.norm(0, GAMMA_SPACE_MAX, val);
+        int value = (int) (normalizedVal*max);
+        return value>0? value : 1;
+   }
+   private final int convertLinearToGammaExt(int val, int min, int max) {
+       // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
+       final float normalizedVal = MathUtils.norm(0, max, val);
+       return (int) (normalizedVal*GAMMA_SPACE_MAX);
+   }
+//hqingbin 2023.7.18 Change to Line brightness (Brightness is 50% by default) end
+
 
 }

Android11修改方式

--- a/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java
+++ b/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java
@@ -76,7 +76,7 @@ public class BrightnessUtils {
      */
     public static final float convertGammaToLinearFloat(int val, float min, float max) {
         final float normalizedVal = MathUtils.norm(GAMMA_SPACE_MIN, GAMMA_SPACE_MAX, val);
-        final float ret;
+      /*ybf  final float ret;
         if (normalizedVal <= R) {
             ret = MathUtils.sq(normalizedVal / R);
         } else {
@@ -86,10 +86,10 @@ public class BrightnessUtils {
         // HLG is normalized to the range [0, 12], ensure that value is within that range,
         // it shouldn't be out of bounds.
         final float normalizedRet = MathUtils.constrain(ret, 0, 12);
-
+*/
         // Re-normalize to the range [0, 1]
         // in order to derive the correct setting value.
-        return MathUtils.lerp(min, max, normalizedRet / 12);
+        return MathUtils.lerp(min, max, normalizedVal);
     }
 
     /**
@@ -128,14 +128,13 @@ public class BrightnessUtils {
      */
     public static final int convertLinearToGammaFloat(float val, float min, float max) {
         // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
-        final float normalizedVal = MathUtils.norm(min, max, val) * 12;
-        final float ret;
+        final float normalizedVal = MathUtils.norm(min, max, val) ;
+  /*  ybf    final float ret;
         if (normalizedVal <= 1f) {
             ret = MathUtils.sqrt(normalizedVal) * R;
         } else {
             ret = A * MathUtils.log(normalizedVal - B) + C;
-        }
-
-        return Math.round(MathUtils.lerp(GAMMA_SPACE_MIN, GAMMA_SPACE_MAX, ret));
+        }*/
+        return Math.round(MathUtils.lerp(GAMMA_SPACE_MIN, GAMMA_SPACE_MAX, normalizedVal));
     }
 }

Android13修改方式

   亮度修改为线性

diff --git a/alps-mp-t0/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java b/alps-mp-t0/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java
old mode 100644
new mode 100755
index 4f86afa..8d81973
--- a/alps-mp-t0/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java
+++ b/alps-mp-t0/frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java
@@ -22,6 +22,7 @@ public class BrightnessUtils {
 
     public static final int GAMMA_SPACE_MIN = 0;
     public static final int GAMMA_SPACE_MAX = 65535;
+       public static final boolean ENABLE_GAMMA = false;
 
     // Hybrid Log Gamma constant values
     private static final float R = 0.5f;
@@ -75,6 +76,10 @@ public class BrightnessUtils {
      * @return The corresponding setting value.
      */
     public static final float convertGammaToLinearFloat(int val, float min, float max) {
+               if(!ENABLE_GAMMA){
+            float ratio = (float)val / GAMMA_SPACE_MAX;
+            return min + (float)(ratio * (max - min));
+        }
         final float normalizedVal = MathUtils.norm(GAMMA_SPACE_MIN, GAMMA_SPACE_MAX, val);
         final float ret;
         if (normalizedVal <= R) {
@@ -128,6 +133,10 @@ public class BrightnessUtils {
      */
     public static final int convertLinearToGammaFloat(float val, float min, float max) {
         // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
+               if(!ENABLE_GAMMA){
+            float ratio = (float)(val - min)/ (max - min);
+            return (int)(ratio * GAMMA_SPACE_MAX);
+        }
         final float normalizedVal = MathUtils.norm(min, max, val) * 12;
         final float ret;
         if (normalizedVal <= 1f) {

Android14修改方式

--- a/alps-mp-u0/frameworks/base/packages/SettingsLib/DisplayUtils/src/com/android/settingslib/display/BrightnessUtils.java
+++ b/alps-mp-u0/frameworks/base/packages/SettingsLib/DisplayUtils/src/com/android/settingslib/display/BrightnessUtils.java
@@ -23,6 +23,7 @@ public class BrightnessUtils {
 
     public static final int GAMMA_SPACE_MIN = 0;
     public static final int GAMMA_SPACE_MAX = 65535;
+    public static final boolean ENABLE_GAMMA = false;
 
     // Hybrid Log Gamma constant values
     private static final float R = 0.5f;
@@ -76,6 +77,10 @@ public class BrightnessUtils {
      * @return The corresponding setting value.
      */
     public static final float convertGammaToLinearFloat(int val, float min, float max) {
+        if(!ENABLE_GAMMA){
+            float ratio = (float)val / GAMMA_SPACE_MAX;
+            return min + (float)(ratio * (max - min));
+        }
         final float normalizedVal = MathUtils.norm(GAMMA_SPACE_MIN, GAMMA_SPACE_MAX, val);
         final float ret;
         if (normalizedVal <= R) {
@@ -129,6 +134,10 @@ public class BrightnessUtils {
      */
     public static final int convertLinearToGammaFloat(float val, float min, float max) {
         // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
+        if(!ENABLE_GAMMA){
+            float ratio = (float)(val - min)/ (max - min);
+            return (int)(ratio * GAMMA_SPACE_MAX);
+        }
         final float normalizedVal = MathUtils.norm(min, max, val) * 12;
         final float ret;
         if (normalizedVal <= 1f) {

修改默认亮度为50%

Android11以前的版本

vendor/mediatek/proprietary/packages/apps/SettingsProvider/res/values/defaults.xml

--- a/ap/vendor/mediatek/proprietary/packages/apps/SettingsProvider/res/values/defaults.xml
+++ b/ap/vendor/mediatek/proprietary/packages/apps/SettingsProvider/res/values/defaults.xml
@@ -29,8 +29,8 @@
     <bool name="def_auto_time">true</bool>
     <bool name="def_auto_time_zone">true</bool>
     <bool name="def_accelerometer_rotation">false</bool>
-    <!-- Default screen brightness, from 0 to 255.  102 is 40%. -->
-    <integer name="def_screen_brightness">102</integer>
+    <!-- Default screen brightness, from 0 to 255.  127 is 50%. -->
+    <integer name="def_screen_brightness">127</integer>
     <bool name="def_screen_brightness_automatic_mode">false</bool>
     <fraction name="def_window_animation_scale">100%</fraction>
     <fraction name="def_window_transition_scale">100%</fraction>

Android11后的版本

frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java

index d06df7af..8f9d4c7
--- a/alps-mp-t0/frameworks/base/services/core/java/com/android/server/display/DisplayDeviceConfig.java
+++ b/alps-mp-t0/frameworks/base/services/core/java/com/android/server/display/DisplayDeviceConfig.java
@@ -805,7 +805,7 @@ public class DisplayDeviceConfig {
                     mContext.getResources().getInteger(com.android.internal.R.integer
                             .config_screenBrightnessSettingDefault));
         } else {
-            mBrightnessDefault = def;
+            mBrightnessDefault = 0.5f;
         }
     }
 

或者vendor/mediatek/proprietary/packages/overlay/vendor/FrameworkResOverlay/res/values/config.xml

--- a/vendor/mediatek/proprietary/packages/overlay/vendor/FrameworkResOverlay/res/values/config.xml
+++ b/vendor/mediatek/proprietary/packages/overlay/vendor/FrameworkResOverlay/res/values/config.xml
@@ -28,5 +28,5 @@
     <item name="config_screenBrightnessSettingMaximumFloat" format="float" type="dimen">1.0</item>
     <!-- Default screen brightness setting set.
     Set this to 0.4 for Default brightness Float.-->
-    <item name="config_screenBrightnessSettingDefaultFloat" format="float" type="dimen">0.4</item>
+    <item name="config_screenBrightnessSettingDefaultFloat" format="float" type="dimen">0.5</item>
 </resources>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值