mirror of
https://gitee.com/openharmony/applications_screenshot
synced 2024-11-27 01:00:24 +00:00
31ed642e1a
Signed-off-by: username <1037761763@qq.com>
79 lines
2.2 KiB
Markdown
79 lines
2.2 KiB
Markdown
# ScreenShot
|
||
|
||
## 简介
|
||
|
||
### 内容介绍
|
||
ScreenShot应用是OpenHarmony中预置的系统应用,为用户提供截取当前屏幕并保存图片的功能。
|
||
|
||
### 架构图
|
||
|
||
![](figures/cn_diagram.png)
|
||
|
||
#### 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创建截屏小窗口用于显示图片,示例代码如下
|
||
|
||
```js
|
||
// 创建截屏小窗口用于显示图片
|
||
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** |