@heybox/hb-sdk 0.9.1-alpha.11 → 0.9.1-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/README.md +4 -2
- package/dist/cli-chunks/{build-CSTdWNu1.cjs → build-BbHZwXU-.cjs} +5 -5
- package/dist/cli-chunks/{context-Bej2XR0w.cjs → context-DO5i8KuO.cjs} +10 -5
- package/dist/cli-chunks/{create-Cz5tqvMR.cjs → create--IVuD5k_.cjs} +1 -1
- package/dist/cli-chunks/{dev-6nGC0_bZ.cjs → dev-BhEiM7pc.cjs} +194 -81
- package/dist/cli-chunks/{doctor-BSSJ7n8i.cjs → doctor-d1QBw6xr.cjs} +1 -1
- package/dist/cli-chunks/{index-gqsUj-Am.cjs → index-Bg8efmgB.cjs} +1 -1
- package/dist/cli-chunks/{index-CQtu_5c7.cjs → index-D9EWV1_s.cjs} +16 -16
- package/dist/cli-chunks/{index.esm-BuwSVK1U.cjs → index.esm-D4RF7uzO.cjs} +6 -6
- package/dist/cli-chunks/{login-BB07gOy9.cjs → login-CQ30ru_V.cjs} +1 -1
- package/dist/cli-chunks/{project-vite-DqbyiCMm.cjs → project-vite-ESL8lQxi.cjs} +1 -1
- package/dist/cli-chunks/{remote-BvvAbGIG.cjs → remote-DanoP7Dn.cjs} +28 -16
- package/dist/cli-chunks/{runtime-gate-Bh1vm1an.cjs → runtime-gate-DZsAmCYW.cjs} +2 -2
- package/dist/cli-chunks/{runtime-permission-env-DuRchECp.cjs → runtime-permission-env-CmEUEBaN.cjs} +50 -4
- package/dist/cli-chunks/{skill-D1pYV7g_.cjs → skill-D8nZ85m0.cjs} +2 -2
- package/dist/cli-chunks/{version-BaMa3UQg.cjs → version-BQjpkyst.cjs} +1 -1
- package/dist/cli.cjs +1 -1
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-Dve2R-Eg.js +102 -0
- package/dist/devtools/browser-dev-host/assets/{desktop-app-launch-D1z3MxUY.js → desktop-app-launch-DHAqShPh.js} +1 -1
- package/dist/devtools/browser-dev-host/assets/{index-BRxbUJVN.css → index-7Cq8iNcD.css} +1 -1
- package/dist/devtools/browser-dev-host/assets/{index-CuH8wWTJ.js → index-V5tDukHZ.js} +4 -4
- package/dist/devtools/browser-dev-host/index.html +3 -3
- package/dist/index.cjs.js +8 -2
- package/dist/index.esm.js +8 -2
- package/dist/protocol.cjs.js +1 -1
- package/dist/protocol.esm.js +1 -1
- package/dist/vite.cjs.js +1 -1
- package/dist/vite.esm.js +1 -1
- package/docs/runtime-host-migration.md +4 -2
- package/package.json +3 -3
- package/skill/SKILL.md +10 -0
- package/skill/skill.json +5 -5
- package/types/index.d.ts +7 -2
- package/dist/devtools/browser-dev-host/assets/browser-dev-host-wMCyX_zc.js +0 -102
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<meta name="theme-color" content="#f4f5f7" />
|
|
7
7
|
<title>小程序工坊调试台</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
-
<link rel="modulepreload" crossorigin href="/assets/desktop-app-launch-
|
|
10
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-V5tDukHZ.js"></script>
|
|
9
|
+
<link rel="modulepreload" crossorigin href="/assets/desktop-app-launch-DHAqShPh.js">
|
|
10
|
+
<link rel="stylesheet" crossorigin href="/assets/index-7Cq8iNcD.css">
|
|
11
11
|
</head>
|
|
12
12
|
<body>
|
|
13
13
|
<div id="app"></div>
|
package/dist/index.cjs.js
CHANGED
|
@@ -282,7 +282,7 @@ function isPlainObject$2(value) {
|
|
|
282
282
|
* `data` 仅作为可选调试信息,不保证结构稳定。错误码是跨 Host 的分支契约;
|
|
283
283
|
* `message` 只用于日志和开发者提示,不应作为机器判断条件。
|
|
284
284
|
*
|
|
285
|
-
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`
|
|
285
|
+
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`PERMISSION_NOT_IN_SNAPSHOT`
|
|
286
286
|
* 或 `PERMISSION_DENIED`(检查 Manifest/平台批准)、`USER_GESTURE_REQUIRED`
|
|
287
287
|
*(改为用户点击后重试)、`AUTHORIZATION_CANCELLED`(结束当前流程),以及
|
|
288
288
|
* `METHOD_FORBIDDEN`(当前 Host 不支持该能力)。具体能力还可能返回模块专属错误码。
|
|
@@ -7278,7 +7278,7 @@ function createMessageId() {
|
|
|
7278
7278
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
7279
7279
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
7280
7280
|
? undefined
|
|
7281
|
-
: '0.9.1-alpha.
|
|
7281
|
+
: '0.9.1-alpha.13';
|
|
7282
7282
|
|
|
7283
7283
|
const RUNTIME_MODES = new Set(['production', 'preview', 'development', 'unknown']);
|
|
7284
7284
|
const OPERATING_SYSTEM_NAMES = new Set(['android', 'ios', 'ohos', 'windows', 'macos', 'linux', 'unknown']);
|
|
@@ -10270,6 +10270,12 @@ function decodeBase64Url(value) {
|
|
|
10270
10270
|
* @see {@link MiniProgramScreenshotOptions}
|
|
10271
10271
|
*/
|
|
10272
10272
|
function screenshot(requester, options) {
|
|
10273
|
+
try {
|
|
10274
|
+
console.warn('[hb-sdk] share.screenshot 行为变更提醒:正式版 SDK 0.9.1 及以上默认添加小程序品牌水印;低于 0.9.1(含预发布版本)的 SDK 保持无水印截图。升级前请在目标截图区域底部预留至少 57 个逻辑像素,避免遮挡重要内容;watermarkTheme 的 light 为黑色水印,dark 为白色水印且是默认值,不自动跟随系统主题。系统按键截图不在此能力范围内。');
|
|
10275
|
+
}
|
|
10276
|
+
catch {
|
|
10277
|
+
// 日志输出失败不能阻断截图调用。
|
|
10278
|
+
}
|
|
10273
10279
|
return requester.request(SHARE_SCREENSHOT_METHOD, options);
|
|
10274
10280
|
}
|
|
10275
10281
|
|
package/dist/index.esm.js
CHANGED
|
@@ -278,7 +278,7 @@ function isPlainObject$2(value) {
|
|
|
278
278
|
* `data` 仅作为可选调试信息,不保证结构稳定。错误码是跨 Host 的分支契约;
|
|
279
279
|
* `message` 只用于日志和开发者提示,不应作为机器判断条件。
|
|
280
280
|
*
|
|
281
|
-
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`
|
|
281
|
+
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`PERMISSION_NOT_IN_SNAPSHOT`
|
|
282
282
|
* 或 `PERMISSION_DENIED`(检查 Manifest/平台批准)、`USER_GESTURE_REQUIRED`
|
|
283
283
|
*(改为用户点击后重试)、`AUTHORIZATION_CANCELLED`(结束当前流程),以及
|
|
284
284
|
* `METHOD_FORBIDDEN`(当前 Host 不支持该能力)。具体能力还可能返回模块专属错误码。
|
|
@@ -7274,7 +7274,7 @@ function createMessageId() {
|
|
|
7274
7274
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
7275
7275
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
7276
7276
|
? undefined
|
|
7277
|
-
: '0.9.1-alpha.
|
|
7277
|
+
: '0.9.1-alpha.13';
|
|
7278
7278
|
|
|
7279
7279
|
const RUNTIME_MODES = new Set(['production', 'preview', 'development', 'unknown']);
|
|
7280
7280
|
const OPERATING_SYSTEM_NAMES = new Set(['android', 'ios', 'ohos', 'windows', 'macos', 'linux', 'unknown']);
|
|
@@ -10266,6 +10266,12 @@ function decodeBase64Url(value) {
|
|
|
10266
10266
|
* @see {@link MiniProgramScreenshotOptions}
|
|
10267
10267
|
*/
|
|
10268
10268
|
function screenshot(requester, options) {
|
|
10269
|
+
try {
|
|
10270
|
+
console.warn('[hb-sdk] share.screenshot 行为变更提醒:正式版 SDK 0.9.1 及以上默认添加小程序品牌水印;低于 0.9.1(含预发布版本)的 SDK 保持无水印截图。升级前请在目标截图区域底部预留至少 57 个逻辑像素,避免遮挡重要内容;watermarkTheme 的 light 为黑色水印,dark 为白色水印且是默认值,不自动跟随系统主题。系统按键截图不在此能力范围内。');
|
|
10271
|
+
}
|
|
10272
|
+
catch {
|
|
10273
|
+
// 日志输出失败不能阻断截图调用。
|
|
10274
|
+
}
|
|
10269
10275
|
return requester.request(SHARE_SCREENSHOT_METHOD, options);
|
|
10270
10276
|
}
|
|
10271
10277
|
|
package/dist/protocol.cjs.js
CHANGED
|
@@ -1299,7 +1299,7 @@ function isManagedMiniProgramRuntimePermissionKey(key) {
|
|
|
1299
1299
|
* `requirement`:`kind: 'none'` 不读取权限;`kind: 'all'` 要求列出的每个 canonical entry 都存在
|
|
1300
1300
|
* 且 `status === 'enabled'`。之后仍需通过 Host capability、可信手势、用户授权、参数和业务
|
|
1301
1301
|
* policy。当前 Runtime 对 `valid: false` 按空权限表 fail closed,受保护 method 会得到
|
|
1302
|
-
* `
|
|
1302
|
+
* `PERMISSION_NOT_IN_SNAPSHOT`,而不是沿用输入中的部分 enabled entry。
|
|
1303
1303
|
*
|
|
1304
1304
|
* @example
|
|
1305
1305
|
* ```ts
|
package/dist/protocol.esm.js
CHANGED
|
@@ -1297,7 +1297,7 @@ function isManagedMiniProgramRuntimePermissionKey(key) {
|
|
|
1297
1297
|
* `requirement`:`kind: 'none'` 不读取权限;`kind: 'all'` 要求列出的每个 canonical entry 都存在
|
|
1298
1298
|
* 且 `status === 'enabled'`。之后仍需通过 Host capability、可信手势、用户授权、参数和业务
|
|
1299
1299
|
* policy。当前 Runtime 对 `valid: false` 按空权限表 fail closed,受保护 method 会得到
|
|
1300
|
-
* `
|
|
1300
|
+
* `PERMISSION_NOT_IN_SNAPSHOT`,而不是沿用输入中的部分 enabled entry。
|
|
1301
1301
|
*
|
|
1302
1302
|
* @example
|
|
1303
1303
|
* ```ts
|
package/dist/vite.cjs.js
CHANGED
|
@@ -10282,7 +10282,7 @@ async function ensureBasicInfoDirectory(rootPath, relative) {
|
|
|
10282
10282
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
10283
10283
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
10284
10284
|
? undefined
|
|
10285
|
-
: '0.9.1-alpha.
|
|
10285
|
+
: '0.9.1-alpha.13';
|
|
10286
10286
|
|
|
10287
10287
|
/**
|
|
10288
10288
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
package/dist/vite.esm.js
CHANGED
|
@@ -10279,7 +10279,7 @@ async function ensureBasicInfoDirectory(rootPath, relative) {
|
|
|
10279
10279
|
/** 构建时替换为当前发布包的实际版本。 */
|
|
10280
10280
|
const HB_SDK_VERSION = typeof undefined === 'string'
|
|
10281
10281
|
? undefined
|
|
10282
|
-
: '0.9.1-alpha.
|
|
10282
|
+
: '0.9.1-alpha.13';
|
|
10283
10283
|
|
|
10284
10284
|
/**
|
|
10285
10285
|
* iframe 与调试台页面的开发期 console 捕获转发。
|
|
@@ -89,7 +89,9 @@ Storage 面板只通过 `runtime.diagnostics.storage?.getSnapshot()` 读取 Runt
|
|
|
89
89
|
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
|
|
90
90
|
| Browser Dev Host | 私有 WebSocket channel 优先,HTTP/SSE 保留为兼容路径。账号 identity 的 canonical 读取仍由 HTTP session status 完成;channel 只发 revision hint,收到 hint 后重新读取 HTTP 状态。 | WebSocket 握手、重连或消息失败不阻断 Browser Mock;回退 HTTP/SSE 并继续有界轮询。 |
|
|
91
91
|
| Mobile Release | 当前稳定客户端继续把原生 `mini_url` launch 交给详情 H5/Native Host;二维码保持 HTTPS `open_inapp` 与 `heybox://` `openWindow`,但短链这一跳是普通 H5。跳转页打开完整 sandbox query(`mini_url`、身份、启动票和 LAN Dev Context)后延迟 `closeWindow`。真机 WebView 基址是 `http://127.0.0.1` 详情页且 HTML 来自线上缓存。 | 生成真机二维码前仍需 CLI 登录、项目绑定和有效 Dev Context;这些条件不阻断 Browser 调试台启动。 |
|
|
92
|
-
| Mobile Debug/Ad-Hoc H5 | `dev_context_url` 是可选的 Dev Session 输入;读取成功后采用本地 network proxy,代理不参与 Runtime 权限判断。 | Dev Context
|
|
92
|
+
| Mobile Debug/Ad-Hoc H5 | `dev_context_url` 是可选的 Dev Session 输入;读取成功后采用本地 network proxy,代理不参与 Runtime 权限判断。 | 历史协议 Dev Context 不可用时保留原生适配;新开发协议缺少有效描述时阻断并提示重试或更新 CLI。 |
|
|
93
|
+
|
|
94
|
+
开发快照与凭据续期的权威约定见[开发会话](./development-session.md)。
|
|
93
95
|
|
|
94
96
|
`DevSession` 同时携带本地声明、独立的 `local_dev_grant` 与 context revision,不会反向修改线上配置。真实 H5 必须先以启动票取得 canonical identity,再将可信线上基线与声明及严格解析的 grant 合成普通 Runtime 快照;没有有效票据或非法 grant 时不临时放权。临时授权仅允许 `network` / `companion`,不包含 `useOfficialDomain`,且每次启动由用户确认。
|
|
95
97
|
|
|
@@ -101,7 +103,7 @@ Node 负责 CLI-owned stable context endpoint、短跳转 registry 和 Launch Re
|
|
|
101
103
|
|
|
102
104
|
## Mobile 短跳转安全边界
|
|
103
105
|
|
|
104
|
-
默认 Mobile 二维码编码现有 `https://api.xiaoheihe.cn/open_inapp/#heybox://...` 启动契约,但短链这一跳是普通 H5 `openWindow`(不带 `mini_program`),`webview.url` 只放局域网短链 `http://<lan-ip>:<port>/l/<token>`。短链返回 HTML 跳转页:先 `location.href` 打开完整 `heybox-mini-dev://sandbox` 协议,约 500ms 后再发 `closeWindow` 关掉中间页。不要对自定义协议做 HTTP 302,WebView 会把它当成相对路径。真机 WebView 基址是 `http://127.0.0.1/tools/user_miniprogram/detail`,HTML 来自线上详情页缓存,因此最终协议携带 `mini_url`、`mini_program_id`、`local_dev_launch_token`、`sdk_version` 和稳定 CLI-owned `dev_context_url`;二维码短期 token 轮换不会让已打开页面失效。`launch.json` 仍可作为同分支详情 Host
|
|
106
|
+
默认 Mobile 二维码编码现有 `https://api.xiaoheihe.cn/open_inapp/#heybox://...` 启动契约,但短链这一跳是普通 H5 `openWindow`(不带 `mini_program`),`webview.url` 只放局域网短链 `http://<lan-ip>:<port>/l/<token>`。短链返回 HTML 跳转页:先 `location.href` 打开完整 `heybox-mini-dev://sandbox` 协议,约 500ms 后再发 `closeWindow` 关掉中间页。不要对自定义协议做 HTTP 302,WebView 会把它当成相对路径。真机 WebView 基址是 `http://127.0.0.1/tools/user_miniprogram/detail`,HTML 来自线上详情页缓存,因此最终协议携带 `mini_url`、`mini_program_id`、`local_dev_launch_token`、`sdk_version` 和稳定 CLI-owned `dev_context_url`;二维码短期 token 轮换不会让已打开页面失效。`launch.json` 仍可作为同分支详情 Host 的补充发现。新开发协议的 Dev Context 过期或校验失败时不能生成新运行快照;历史适配边界见开发会话文档。
|
|
105
107
|
|
|
106
108
|
`launch.json` 和短链都只减少二维码编码长度,不是认证、加密、签名或 HMAC:
|
|
107
109
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heybox/hb-sdk",
|
|
3
|
-
"version": "0.9.1-alpha.
|
|
3
|
+
"version": "0.9.1-alpha.13",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"./src/index.ts",
|
|
6
6
|
"./src/core/singleton.ts",
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"undici": "^7.28.0",
|
|
77
77
|
"ws": "^8.18.0",
|
|
78
78
|
"sharp": "^0.34.5",
|
|
79
|
-
"@heybox/hb-sdk-protocol": "0.9.1-alpha.
|
|
79
|
+
"@heybox/hb-sdk-protocol": "0.9.1-alpha.13"
|
|
80
80
|
},
|
|
81
81
|
"peerDependencies": {
|
|
82
82
|
"vite": ">=5"
|
|
@@ -129,7 +129,7 @@
|
|
|
129
129
|
"@ai-desktop/view-contract": "file:../hb-sdk-protocol/vendor/view-contract-2.2.2-6ac49bbf6410.tgz",
|
|
130
130
|
"rollup-plugin-dts": "6.4.0",
|
|
131
131
|
"@heybox-domain/heybox-theme": "~0.1.0",
|
|
132
|
-
"@heybox/hb-sdk-runtime": "~0.9.1-alpha.
|
|
132
|
+
"@heybox/hb-sdk-runtime": "~0.9.1-alpha.13",
|
|
133
133
|
"@heybox/hb-api": "~1.28.14",
|
|
134
134
|
"@heybox-domain/heybox-vue3-ui": "~0.1.0",
|
|
135
135
|
"@heybox/runtime": "~0.2.1",
|
package/skill/SKILL.md
CHANGED
|
@@ -7,6 +7,16 @@ description: Uses @heybox/hb-sdk and the hb-sdk CLI to build, debug, review, and
|
|
|
7
7
|
|
|
8
8
|
Use this Skill for workshop mini-program application code, project declarations, public SDK APIs, CLI workflows, Host/Runtime protocol maintenance, and publishing review.
|
|
9
9
|
|
|
10
|
+
## Screenshot API Changes: Mandatory Upgrade Checks
|
|
11
|
+
|
|
12
|
+
Before implementing screenshot flows or upgrading the SDK, use the canonical documentation index to read the screenshot Reference, community-sharing Recipe, and upgrade notes. Explicitly explain these changes to the developer:
|
|
13
|
+
|
|
14
|
+
- Check the installed SDK against the watermark version cutoff, including prerelease ordering. Explain the warning emitted by the SDK screenshot entry and the Runtime's compatibility behavior for legacy screenshots versus the default watermark behavior for newer SDKs.
|
|
15
|
+
- Check the required reserved area at the bottom of the capture region, the content that must remain unobstructed, and the corresponding rules for custom capture rectangles.
|
|
16
|
+
- Check the light/dark theme option, default colors, system-theme behavior, and the support boundary between SDK screenshots and physical-button screenshots.
|
|
17
|
+
|
|
18
|
+
Before upgrading, verify both the page layout and the captured image. Do not only update the dependency or invocation without explaining screenshot behavior changes. Read exact version cutoffs, dimensions, parameters, and Host support from the canonical documentation fetched for this task; never substitute an older installed Skill snapshot.
|
|
19
|
+
|
|
10
20
|
## Canonical Documentation
|
|
11
21
|
|
|
12
22
|
The only maintained hb-sdk guidance source is:
|
package/skill/skill.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hb-sdk",
|
|
3
|
-
"skillVersion": "0.9.1-alpha.
|
|
3
|
+
"skillVersion": "0.9.1-alpha.13+skill.c3a240ca503a",
|
|
4
4
|
"sdk": {
|
|
5
5
|
"package": "@heybox/hb-sdk",
|
|
6
|
-
"version": "0.9.1-alpha.
|
|
7
|
-
"compatibility": "0.9.1-alpha.
|
|
6
|
+
"version": "0.9.1-alpha.13",
|
|
7
|
+
"compatibility": "0.9.1-alpha.13"
|
|
8
8
|
},
|
|
9
9
|
"distribution": {
|
|
10
10
|
"type": "npm",
|
|
11
11
|
"package": "@heybox/hb-sdk",
|
|
12
|
-
"version": "0.9.1-alpha.
|
|
12
|
+
"version": "0.9.1-alpha.13",
|
|
13
13
|
"path": "skill"
|
|
14
14
|
},
|
|
15
|
-
"integrity": "sha256-
|
|
15
|
+
"integrity": "sha256-c3a240ca503a1e5f3b15033e091f1fa79a8b70585aa0d8d8fa0b332daec60ac5"
|
|
16
16
|
}
|
package/types/index.d.ts
CHANGED
|
@@ -2079,7 +2079,7 @@ interface MiniProgramNetworkModule {
|
|
|
2079
2079
|
* `data` 仅作为可选调试信息,不保证结构稳定。错误码是跨 Host 的分支契约;
|
|
2080
2080
|
* `message` 只用于日志和开发者提示,不应作为机器判断条件。
|
|
2081
2081
|
*
|
|
2082
|
-
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`
|
|
2082
|
+
* 常见处理类别包括:`INVALID_PARAMS`(修正调用参数)、`PERMISSION_NOT_IN_SNAPSHOT`
|
|
2083
2083
|
* 或 `PERMISSION_DENIED`(检查 Manifest/平台批准)、`USER_GESTURE_REQUIRED`
|
|
2084
2084
|
*(改为用户点击后重试)、`AUTHORIZATION_CANCELLED`(结束当前流程),以及
|
|
2085
2085
|
* `METHOD_FORBIDDEN`(当前 Host 不支持该能力)。具体能力还可能返回模块专属错误码。
|
|
@@ -3451,7 +3451,12 @@ interface MiniProgramShareModule {
|
|
|
3451
3451
|
* `pixelRatio` 换算,也不把越界矩形夹取到窗口内。JavaScript 的 coercible 非 number 值可能被
|
|
3452
3452
|
* 当前 Runtime 接受,但这不是 TypeScript 公共合同,不应依赖。
|
|
3453
3453
|
*
|
|
3454
|
-
*
|
|
3454
|
+
* SDK 每次调用都会输出 warning,提醒水印行为变化及布局、配色要求;日志失败不阻断截图。
|
|
3455
|
+
* 新 Runtime 按 Version record 中已校验的 SDK 版本启用水印:低于正式版 `0.9.1`
|
|
3456
|
+
* (包括 `0.9.1-alpha.*`)或兼容模式下版本缺失时,静默保持无水印截图;
|
|
3457
|
+
* `0.9.1` 及以上默认添加水印。升级 SDK 前应同步调整截图布局。
|
|
3458
|
+
*
|
|
3459
|
+
* 启用水印时,Runtime 会在截图区域底部居中叠加「小黑盒 + 搜索图标 + 当前小程序名称」胶囊,
|
|
3455
3460
|
* 下方显示灰色「小黑盒工坊小程序」。开发者应在目标截图区域底部预留至少 57 个逻辑
|
|
3456
3461
|
* 像素的空白背景,不放置成绩、正文、按钮等重要内容,并保证背景与所选水印配色
|
|
3457
3462
|
* 有足够对比度;自定义 `rect` 也按该区域的底部预留。水印不增加图片尺寸,只在本次
|