HarmonyOS如何禁止截屏和录屏?

输入密码的界面不允许截屏和录屏,如何设置?

阅读 555
1 个回答

1.EntryAbility.ets的onWindowStageCreate中获取mainWindow并保存。

  let windowClass = windowStage.getMainWindowSync()    
globalThis.mainWindow = windowClass

2.设置禁止截屏页面(注意:需要先在module.json5中配置隐私窗口权限ohos.permission.PRIVACY\_WINDOW)。

import window from '@ohos.window' 
@Entry 
@Component 
struct Page32 { 
  @State message: string = 'Hello World' 
  mainWindow :window.Window = globalThis.mainWindow 
  build() { 
    Row() { 
      Column() { 
        Text(this.message) 
          .fontSize(50) 
          .fontWeight(FontWeight.Bold) 
      } 
      .width('100%') 
    } 
    .height('100%') 
  } 
  onPageShow(){ 
   this.mainWindow.setWindowPrivacyMode(true) 
  } 
  onPageHide(){ 
    this.mainWindow.setWindowPrivacyMode(false) 
  } 
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进