applications_screenshot/README.md
username 31ed642e1a 更新代码
Signed-off-by: username <1037761763@qq.com>
2022-04-11 10:59:35 +08:00

2.2 KiB
Raw Permalink Blame History

ScreenShot

简介

内容介绍

ScreenShot应用是OpenHarmony中预置的系统应用为用户提供截取当前屏幕并保存图片的功能。

架构图

feature

截屏管理层,提供截屏窗口显示控制,图片保存控制。

common

通用工具类,提供日志打印,外部接口管理功能。

目录

/applications/standard/screenshot
    ├── entry                           # entry模块目录
    ├── common                          # 通用工具类目录
    ├── build.gradle                    # 全局编译配置文件
    ├── settings.gradle                 # 编译模块配置文件
    ├── LICENSE                         # 许可文件
    ├── signature                       # 证书文件目录
    ├── features                        # 子组件目录
    │   ├── screenshot                  # 截屏组件   
    │       ├── screenShotModel         # 截屏图片保存等   
    ├── product                         # ScreenShot总体功能目录

功能描述

features

子组件目录,提供截屏窗口显示控制,图片保存控制。

product

ScreenShot总体功能目录截屏服务入口。

签名

1.针对product/phone下的每一个模块配置build.gradle中的signingConfigs

2.将signature目录下的screenshot.p7b放在build.gradle目录中配置的相应路径即可

使用方法

通过create创建截屏小窗口用于显示图片示例代码如下

// 创建截屏小窗口用于显示图片
window.create(context, windowName, WINDOW_TYPE).then((win) => {
  win.moveTo(0, WINDOW_Y).then(() => {
    win.resetSize(dis.width * ZOOM_RATIO, dis.height * ZOOM_RATIO).then(() => {
      win.loadContent(INDEX_PAGE).then(() => {
      })
    })
  })
}, (error) => {
  Log.showInfo(TAG, " window createFailed, error.code = " + error.code)
})


// 截取当前屏幕,返回值可以直接显示控件上
Screenshot.save().then(async (data) => {
  if (!!data) {
    show();
  }
}).catch((err) => {
  Log.showInfo(TAG, `save err`);
})
    

相关仓

系统应用

applications_screenshot