美文网首页程序员Android知识Android开发经验谈
坚果部分机型屏幕亮度调整问题

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

作者: 小追兵 | 来源:发表于2016-03-01 18:16 被阅读775次

    小追兵专栏

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

    我们在设置屏幕亮度的时候,会给设置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翻墙账号可以私聊。

    相关文章

      网友评论

        本文标题:坚果部分机型屏幕亮度调整问题

        本文链接:https://www.haomeiwen.com/subject/iffnkttx.html