HarmonyOS 鸿蒙Next在展码页面如何设置屏幕常亮并设置屏幕亮度最高?我看设置亮度的功能已经被废弃了

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next在展码页面如何设置屏幕常亮并设置屏幕亮度最高?我看设置亮度的功能已经被废弃了

在展码页面,如何设置屏幕常亮并设置屏幕亮度最高?我看设置亮度的功能已经被废弃了
 

2 回复

可以参考以下代码,通过点击事件设置屏幕常亮:

import { BusinessError } from '@ohos.base';
import { window } from '@kit.ArkUI';
import common from '@ohos.app.ability.common';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct WebPage {
  private context = getContext(this) as common.UIAbilityContext;
  controller: webView.WebviewController = new webView.WebviewController();
 build() {
    Column() {
      Button('keeplight')
        .onClick(() => {
          // 1.获取应用主窗口。
          let windowClass: window.Window | undefined = undefined;
          try {
            window.getLastWindow(this.context, (err: BusinessError, data) => {
              const errCode: number = err.code;
              if (errCode) {
                console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
                return;
              }
              windowClass = data;
              console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
              try {
                windowClass.setWindowKeepScreenOn(true, (err: BusinessError) => {
                  const errCode: number = err.code;
                  if (errCode) {
                    console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(err));
                    return;
                  }
                  console.info('Succeeded in setting the screen to be always on.');
                });
              } catch (exception) {
                console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(exception));
              }
            });
          } catch (exception) {
            console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(exception));
          }
        })
    }
  }
}

设置屏幕亮度可以使用setWindowBrightness,参考文档:‘https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-window-V5#ZH-CN_TOPIC_0000001893370021__setwindowbrightness9

还要注意的是需要先使用getLastWindow获取window实例,没有获取windowClass就直接调用方法是不生效的。

更多关于HarmonyOS 鸿蒙Next在展码页面如何设置屏幕常亮并设置屏幕亮度最高?我看设置亮度的功能已经被废弃了的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS 鸿蒙Next系统中,针对展码页面设置屏幕常亮及屏幕亮度至最高的需求,可以通过以下步骤实现:

  1. 屏幕常亮设置

    • 在展码页面的代码中,使用系统能力调用屏幕常亮接口。这通常涉及修改系统UI设置,通过特定的API接口保持屏幕不灭。例如,可以使用PowerManager类(假设HarmonyOS提供了类似Android的接口,但具体API需参考HarmonyOS文档)来请求保持屏幕唤醒状态。
  2. 屏幕亮度设置

    • 尽管亮度设置功能在部分文档中可能标记为废弃,HarmonyOS通常会有新的API来替代旧功能。你可以查阅最新的HarmonyOS开发者文档,找到设置屏幕亮度的API。例如,通过DisplayWindowManager等相关类(具体类名需参考HarmonyOS API)来调整屏幕亮度至最大值。

具体实现时,请确保你的应用已获得必要的系统权限,如修改系统设置权限等。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部