坚果部分机型屏幕亮度调整问题

小追兵专栏

坚果部分机型屏幕亮度调整问题

我们在设置屏幕亮度的时候,会给设置0-255的亮度值,0为最暗,255为最亮。

一般这样设置是没有问题的。可是坚果的部分手机,在亮度低于21的时候,屏幕会全黑。

所以做如下处理,如果是坚果手机,当亮度值小于23时,全部显示23的亮度。

其他机型也为了防止发生类似问题。当亮度设置小于10,全部设置为10的亮度。

/**
     * 保存当前的屏幕亮度值,并使之生效
     */
    public static void setScreenBrightness(Activity activity, int paramInt) {
        if ("YQ601".equals(PhoneUtils.getPhoneModel())) {//对锤子手机进行单独配置
            if (paramInt < 23) {
                paramInt = 23;//锥子手机设置亮度在23
            }
        } else {
            if (paramInt < 10) {
                paramInt = 10;
            }
        }
        Window localWindow = activity.getWindow();
        WindowManager.LayoutParams localLayoutParams = localWindow.getAttributes();
        float f = paramInt / 255.0F;
        localLayoutParams.screenBrightness = f;
        localWindow.setAttributes(localLayoutParams);
    }


贴上获取获取手机型号的代码:

 /**
     * 获取手机型号
     *
     * @return
     */
    public static String getPhoneModel() {
        try {
            return URLEncoder.encode(android.os.Build.MODEL, "utf-8");
        } catch (UnsupportedEncodingException e) {
            LogUtils.error(e.getMessage(), e);
        }

        return null;
    }

为什么其他机型调0,没有出现黑屏,应该是系统进行了类似的设置,因为我们将亮度设置0,然后在获取亮度,这是会发现,获取的亮度是大于0的。

最后:有需要Shadowsock翻墙账号可以私聊。

你可能感兴趣的:(坚果部分机型屏幕亮度调整问题)