ms-vite-plugin 1.4.7 → 1.4.9

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.
Binary file
Binary file
package/docs/api/pip.md CHANGED
@@ -1,81 +1,15 @@
1
1
  # 悬浮窗模块 (PIP)
2
2
 
3
- 悬浮窗模块提供了画中画(Picture in Picture)功能,允许在应用中显示悬浮的日志窗口,支持自定义样式和控制脚本启停。
3
+ 悬浮窗模块提供画中画(Picture in Picture)日志窗口能力。
4
4
 
5
5
  ## 功能特性
6
6
 
7
- - 🖼️ **悬浮窗显示** - 支持在屏幕上显示悬浮的日志窗口
8
- - 🎨 **自定义样式** - 可配置窗口大小、字体、颜色等
9
- - 🎮 **脚本控制** - 支持通过悬浮窗控制脚本的启停
10
-
11
- ## 接口定义
12
-
13
- ### LogViewParams - 悬浮窗参数配置
14
-
15
- ```typescript
16
- interface LogViewParams {
17
- /**
18
- * 悬浮窗宽度,不能小于 100
19
- */
20
- width: number;
21
- /**
22
- * 悬浮窗高度,不能小于 100
23
- */
24
- height: number;
25
- /**
26
- * 日志的字体大小
27
- */
28
- textSize: number;
29
- /**
30
- * 日志的文字颜色,格式如 #FFFFFF
31
- */
32
- textColor: string;
33
- /**
34
- * 日志的背景颜色,格式如 #000000
35
- */
36
- backgroundColor: string;
37
- }
38
- ```
39
-
40
- **参数说明:**
41
-
42
- | 参数 | 类型 | 是否必填 | 默认值 | 描述 |
43
- | ----------------- | ------ | -------- | ------ | --------------------------------------- |
44
- | `width` | number | 是 | | 悬浮窗宽度(像素),最小值为 100 |
45
- | `height` | number | 是 | | 悬浮窗高度(像素),最小值为 100 |
46
- | `textSize` | number | 是 | | 日志文字大小(像素) |
47
- | `textColor` | string | 是 | | 文字颜色,十六进制格式(如:`#FFFFFF`) |
48
- | `backgroundColor` | string | 是 | | 背景颜色,十六进制格式(如:`#000000`) |
7
+ - **模式切换**:切换日志、保活和关闭三种悬浮窗模式
8
+ - **状态查询**:判断悬浮窗是否正在显示
9
+ - **识别标记**:日志窗口左上角默认显示高对比标记,可用于截图识别悬浮窗位置
49
10
 
50
11
  ## API 方法
51
12
 
52
- ### setLogViewParams - 设置悬浮窗显示参数
53
-
54
- ```typescript
55
- function setLogViewParams(params: LogViewParams): void;
56
- ```
57
-
58
- 设置悬浮窗日志窗口的显示参数,必须在显示日志窗口之前调用才会生效。
59
-
60
- **参数:**
61
-
62
- | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
63
- | -------- | ------------- | -------- | ------ | ---------------------- |
64
- | `params` | LogViewParams | 是 | | 包含显示参数的配置对象 |
65
-
66
- **示例:**
67
-
68
- ```typescript
69
- // 配置悬浮窗参数
70
- pip.setLogViewParams({
71
- width: 300,
72
- height: 400,
73
- textSize: 14,
74
- textColor: "#FFFFFF",
75
- backgroundColor: "#000000",
76
- });
77
- ```
78
-
79
13
  ### isPipActive - 判断悬浮窗是否打开
80
14
 
81
15
  ```typescript
@@ -93,133 +27,87 @@ function isPipActive(): boolean;
93
27
  **示例:**
94
28
 
95
29
  ```typescript
96
- // 检查悬浮窗是否打开
97
30
  const isActive = pip.isPipActive();
98
31
  if (isActive) {
99
32
  logi("悬浮窗当前已打开");
100
- } else {
101
- logi("悬浮窗当前未打开");
102
33
  }
103
34
  ```
104
35
 
105
- ### showLogWindow - 显示日志窗口
36
+ ### switchToLogMode - 切换到日志模式
106
37
 
107
38
  ```typescript
108
- function showLogWindow(): boolean;
39
+ function switchToLogMode(): boolean;
109
40
  ```
110
41
 
111
- 显示悬浮窗日志窗口。应用必须在前台才可调用
42
+ 切换到日志模式并尝试显示悬浮窗日志窗口。首次显示悬浮窗时 App 必须在前台。
112
43
 
113
44
  **返回值:**
114
45
 
115
- | 类型 | 描述 |
116
- | --------- | --------------------------------- |
117
- | `boolean` | `true` 代表成功,`false` 代表失败 |
46
+ | 类型 | 描述 |
47
+ | --------- | ---------------------- |
48
+ | `boolean` | `true` 代表已提交请求 |
118
49
 
119
50
  **示例:**
120
51
 
121
52
  ```typescript
122
- // 将应用切入前台
123
53
  takeMeToFront();
124
- // 显示悬浮窗
125
- const success = pip.showLogWindow();
126
- if (success) {
127
- logi("悬浮窗显示成功");
128
- } else {
129
- logi("悬浮窗显示失败,请检查权限设置");
130
- }
54
+ const success = pip.switchToLogMode();
131
55
  ```
132
56
 
133
- ### closeLogWindow - 关闭日志窗口
57
+ ### switchToKeepAliveMode - 切换到保活模式
134
58
 
135
59
  ```typescript
136
- function closeLogWindow(): boolean;
60
+ function switchToKeepAliveMode(): boolean;
137
61
  ```
138
62
 
139
- 关闭悬浮窗日志窗口。应用必须在前台才可调用。
63
+ 切换到保活模式并尝试显示极小高度悬浮窗。首次显示悬浮窗时 App 必须在前台。
140
64
 
141
65
  **返回值:**
142
66
 
143
- | 类型 | 描述 |
144
- | --------- | --------------------------------- |
145
- | `boolean` | `true` 代表成功,`false` 代表失败 |
67
+ | 类型 | 描述 |
68
+ | --------- | ---------------------- |
69
+ | `boolean` | `true` 代表已提交请求 |
146
70
 
147
71
  **示例:**
148
72
 
149
73
  ```typescript
150
- // 将应用切入前台
151
74
  takeMeToFront();
152
- // 关闭悬浮窗
153
- const success = pip.closeLogWindow();
154
- if (success) {
155
- logi("悬浮窗关闭成功");
156
- } else {
157
- logi("悬浮窗关闭失败");
158
- }
75
+ const success = pip.switchToKeepAliveMode();
159
76
  ```
160
77
 
161
- ### setPipCtrlScript - 设置脚本控制权限
78
+ ### switchToOffMode - 切换到关闭模式
162
79
 
163
80
  ```typescript
164
- function setPipCtrlScript(ctrl: boolean): boolean;
81
+ function switchToOffMode(): boolean;
165
82
  ```
166
83
 
167
- 设置是否允许悬浮窗控制脚本的启停。
168
-
169
- **参数:**
170
-
171
- | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
172
- | ------ | ------- | -------- | ------ | ------------------------------------------- |
173
- | `ctrl` | boolean | 是 | | `true` 代表允许控制,`false` 代表不允许控制 |
174
-
175
- **示例:**
84
+ 切换到关闭模式并关闭悬浮窗。
176
85
 
177
86
  **返回值:**
178
87
 
179
- | 类型 | 描述 |
180
- | --------- | --------------------------------- |
181
- | `boolean` | `true` 代表成功,`false` 代表失败 |
88
+ | 类型 | 描述 |
89
+ | --------- | ---------------------- |
90
+ | `boolean` | `true` 代表已提交请求 |
182
91
 
183
92
  **示例:**
184
93
 
185
94
  ```typescript
186
- // 允许悬浮窗控制脚本
187
- const ok1 = pip.setPipCtrlScript(true);
188
- // 禁止悬浮窗控制脚本
189
- const ok2 = pip.setPipCtrlScript(false);
95
+ const success = pip.switchToOffMode();
190
96
  ```
191
97
 
192
98
  ## 完整使用示例
193
99
 
194
100
  ```typescript
195
- // 将应用切入前台
196
101
  takeMeToFront();
197
- // 1. 配置悬浮窗参数
198
- pip.setLogViewParams({
199
- width: 350,
200
- height: 500,
201
- textSize: 16,
202
- textColor: "#00FF00", // 绿色文字
203
- backgroundColor: "#1A1A1A", // 深灰色背景
204
- });
205
-
206
- // 2. 允许悬浮窗控制脚本
207
- pip.setPipCtrlScript(true);
208
-
209
- // 3. 显示悬浮窗
210
- const showResult = pip.showLogWindow();
102
+ pip.switchToLogMode();
211
103
  ```
212
104
 
213
105
  ## 注意事项
214
106
 
215
- 1. **前台限制**:所有悬浮窗操作都必须在应用前台状态下进行
107
+ 1. **前台限制**:首次切换到日志模式或保活模式并启动悬浮窗时,App 必须在前台;悬浮窗已启动后可以继续切换日志/保活模式
216
108
  2. **设备兼容性**:仅支持 iOS 15+ 且具备画中画功能的设备
217
- 3. **参数限制**:悬浮窗的宽度和高度都不能小于 100 像素
218
- 4. **配置时机**:`setLogViewParams()` 必须在 `showLogWindow()` 之前调用
219
- 5. **颜色格式**:颜色值必须使用十六进制格式(如:`#FFFFFF`)
220
- 6. **尺寸适配**:iOS 系统会对画中画窗口的尺寸进行限制和自动调整,实际显示的画中画窗口大小可能与设置的 `width` 和 `height` 参数不完全一致
221
- 7. **内容渲染**:画中画内容渲染会自动适配系统分配的实际窗口尺寸,而不是使用配置的尺寸参数
222
- 8. **脚本控制**:如果已调用 `setPipCtrlScript(true)`,则可以通过悬浮窗控制脚本的启停
109
+ 3. **系统限制**:悬浮窗位置和实际显示尺寸由 iOS 管理
110
+ 4. **识别标记**:日志窗口左上角默认包含识别标记,便于通过截图识别悬浮窗位置
223
111
 
224
112
  ## 故障排除
225
113
 
@@ -227,16 +115,4 @@ const showResult = pip.showLogWindow();
227
115
 
228
116
  - 确认设备支持悬浮窗功能
229
117
  - 检查悬浮窗权限是否已开启
230
- - 确认参数配置是否正确(宽高不小于 100)
231
-
232
- ### 悬浮窗显示异常
233
-
234
- - 检查颜色值格式是否正确
235
- - 确认字体大小设置是否合理
236
- - 验证窗口尺寸是否在有效范围内
237
-
238
- ### 脚本控制无效
239
-
240
- - 确认已调用 `setPipCtrlScript(true)`
241
- - 检查悬浮窗是否正常显示
242
- - 验证脚本运行状态是否正常
118
+ - 确认应用当前在前台
package/docs/apicn/pip.md CHANGED
@@ -1,81 +1,15 @@
1
1
  # 悬浮窗模块 ($悬浮窗)
2
2
 
3
- 悬浮窗模块提供了画中画(Picture in Picture)功能,允许在应用中显示悬浮的日志窗口,支持自定义样式和控制脚本启停。
3
+ 悬浮窗模块提供画中画(Picture in Picture)日志窗口能力。
4
4
 
5
5
  ## 功能特性
6
6
 
7
- - 🖼️ **悬浮窗显示** - 支持在屏幕上显示悬浮的日志窗口
8
- - 🎨 **自定义样式** - 可配置窗口大小、字体、颜色等
9
- - 🎮 **脚本控制** - 支持通过悬浮窗控制脚本的启停
10
-
11
- ## 接口定义
12
-
13
- ### 日志窗口参数
14
-
15
- ```typescript
16
- interface 日志窗口参数 {
17
- /**
18
- * 悬浮窗宽度,不能小于 100
19
- */
20
- width: 数字;
21
- /**
22
- * 悬浮窗高度,不能小于 100
23
- */
24
- height: 数字;
25
- /**
26
- * 日志的字体大小
27
- */
28
- textSize: 数字;
29
- /**
30
- * 日志的文字颜色,格式如 #FFFFFF
31
- */
32
- textColor: 字符串;
33
- /**
34
- * 日志的背景颜色,格式如 #000000
35
- */
36
- backgroundColor: 字符串;
37
- }
38
- ```
39
-
40
- **参数说明:**
41
-
42
- | 参数 | 类型 | 是否必填 | 默认值 | 描述 |
43
- | ----------------- | ------ | -------- | ------ | --------------------------------------- |
44
- | `width` | 数字 | 是 | | 悬浮窗宽度(像素),最小值为 100 |
45
- | `height` | 数字 | 是 | | 悬浮窗高度(像素),最小值为 100 |
46
- | `textSize` | 数字 | 是 | | 日志文字大小(像素) |
47
- | `textColor` | 字符串 | 是 | | 文字颜色,十六进制格式(如:`#FFFFFF`) |
48
- | `backgroundColor` | 字符串 | 是 | | 背景颜色,十六进制格式(如:`#000000`) |
7
+ - **模式切换**:切换日志、保活和关闭三种悬浮窗模式
8
+ - **状态查询**:判断悬浮窗是否正在显示
9
+ - **识别标记**:日志窗口左上角默认显示高对比标记,可用于截图识别悬浮窗位置
49
10
 
50
11
  ## API 方法
51
12
 
52
- ### 设置日志视图参数
53
-
54
- ```typescript
55
- function 设置日志视图参数(参数: 日志窗口参数): 无返回值;
56
- ```
57
-
58
- 设置悬浮窗日志窗口的显示参数,必须在显示日志窗口之前调用才会生效。
59
-
60
- **参数:**
61
-
62
- | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
63
- | ------ | ------------ | -------- | ------ | ---------------------- |
64
- | `参数` | 日志窗口参数 | 是 | | 包含显示参数的配置对象 |
65
-
66
- **示例:**
67
-
68
- ```typescript
69
- // 配置悬浮窗参数
70
- $悬浮窗.设置日志视图参数({
71
- width: 300,
72
- height: 400,
73
- textSize: 14,
74
- textColor: "#FFFFFF",
75
- backgroundColor: "#000000",
76
- });
77
- ```
78
-
79
13
  ### 是否显示 - 判断悬浮窗是否打开
80
14
 
81
15
  ```typescript
@@ -93,133 +27,87 @@ function 是否显示(): 布尔值;
93
27
  **示例:**
94
28
 
95
29
  ```typescript
96
- // 检查悬浮窗是否打开
97
30
  const 是否显示 = $悬浮窗.是否显示();
98
31
  if (是否显示) {
99
32
  $打印信息日志("悬浮窗当前已打开");
100
- } else {
101
- $打印信息日志("悬浮窗当前未打开");
102
33
  }
103
34
  ```
104
35
 
105
- ### 显示日志窗口
36
+ ### 切换到日志模式
106
37
 
107
38
  ```typescript
108
- function 显示日志窗口(): 布尔值;
39
+ function 切换到日志模式(): 布尔值;
109
40
  ```
110
41
 
111
- 显示悬浮窗日志窗口。应用必须在前台才可调用
42
+ 切换到日志模式并尝试显示悬浮窗日志窗口。首次显示悬浮窗时 App 必须在前台。
112
43
 
113
44
  **返回值:**
114
45
 
115
- | 类型 | 描述 |
116
- | -------- | --------------------------------- |
117
- | `布尔值` | `true` 代表成功,`false` 代表失败 |
46
+ | 类型 | 描述 |
47
+ | -------- | ---------------------- |
48
+ | `布尔值` | `true` 代表已提交请求 |
118
49
 
119
50
  **示例:**
120
51
 
121
52
  ```typescript
122
- // 将应用切入前台
123
53
  $APP切入前台();
124
- // 显示悬浮窗
125
- const 是否成功 = $悬浮窗.显示日志窗口();
126
- if (是否成功) {
127
- $打印信息日志("悬浮窗显示成功");
128
- } else {
129
- $打印信息日志("悬浮窗显示失败,请检查权限设置");
130
- }
54
+ const 是否成功 = $悬浮窗.切换到日志模式();
131
55
  ```
132
56
 
133
- ### 关闭日志窗口
57
+ ### 切换到保活模式
134
58
 
135
59
  ```typescript
136
- function 关闭日志窗口(): 布尔值;
60
+ function 切换到保活模式(): 布尔值;
137
61
  ```
138
62
 
139
- 关闭悬浮窗日志窗口。应用必须在前台才可调用。
63
+ 切换到保活模式并尝试显示极小高度悬浮窗。首次显示悬浮窗时 App 必须在前台。
140
64
 
141
65
  **返回值:**
142
66
 
143
- | 类型 | 描述 |
144
- | -------- | --------------------------------- |
145
- | `布尔值` | `true` 代表成功,`false` 代表失败 |
67
+ | 类型 | 描述 |
68
+ | -------- | ---------------------- |
69
+ | `布尔值` | `true` 代表已提交请求 |
146
70
 
147
71
  **示例:**
148
72
 
149
73
  ```typescript
150
- // 将应用切入前台
151
74
  $APP切入前台();
152
- // 关闭悬浮窗
153
- const 是否成功 = $悬浮窗.关闭日志窗口();
154
- if (是否成功) {
155
- $打印信息日志("悬浮窗关闭成功");
156
- } else {
157
- $打印信息日志("悬浮窗关闭失败");
158
- }
75
+ const 是否成功 = $悬浮窗.切换到保活模式();
159
76
  ```
160
77
 
161
- ### 设置是否允许控制脚本启停
78
+ ### 切换到关闭模式
162
79
 
163
80
  ```typescript
164
- function 设置是否允许控制脚本启停(是否允许: 布尔值): 布尔值;
81
+ function 切换到关闭模式(): 布尔值;
165
82
  ```
166
83
 
167
- 设置是否允许悬浮窗控制脚本的启停。
168
-
169
- **参数:**
170
-
171
- | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
172
- | ---------- | ------ | -------- | ------ | ------------------------------------------- |
173
- | `是否允许` | 布尔值 | 是 | | `true` 代表允许控制,`false` 代表不允许控制 |
174
-
175
- **示例:**
84
+ 切换到关闭模式并关闭悬浮窗。
176
85
 
177
86
  **返回值:**
178
87
 
179
- | 类型 | 描述 |
180
- | -------- | --------------------------------- |
181
- | `布尔值` | `true` 代表成功,`false` 代表失败 |
88
+ | 类型 | 描述 |
89
+ | -------- | ---------------------- |
90
+ | `布尔值` | `true` 代表已提交请求 |
182
91
 
183
92
  **示例:**
184
93
 
185
94
  ```typescript
186
- // 允许悬浮窗控制脚本
187
- const 是否成功1 = $悬浮窗.设置是否允许控制脚本启停(true);
188
- // 禁止悬浮窗控制脚本
189
- const 是否成功2 = $悬浮窗.设置是否允许控制脚本启停(false);
95
+ const 是否成功 = $悬浮窗.切换到关闭模式();
190
96
  ```
191
97
 
192
98
  ## 完整使用示例
193
99
 
194
100
  ```typescript
195
- // 将应用切入前台
196
101
  $APP切入前台();
197
- // 1. 配置悬浮窗参数
198
- $悬浮窗.设置日志视图参数({
199
- width: 350,
200
- height: 500,
201
- textSize: 16,
202
- textColor: "#00FF00", // 绿色文字
203
- backgroundColor: "#1A1A1A", // 深灰色背景
204
- });
205
-
206
- // 2. 允许悬浮窗控制脚本
207
- $悬浮窗.设置是否允许控制脚本启停(true);
208
-
209
- // 3. 显示悬浮窗
210
- const showResult = $悬浮窗.显示日志窗口();
102
+ $悬浮窗.切换到日志模式();
211
103
  ```
212
104
 
213
105
  ## 注意事项
214
106
 
215
- 1. **前台限制**:所有悬浮窗操作都必须在应用前台状态下进行
107
+ 1. **前台限制**:首次切换到日志模式或保活模式并启动悬浮窗时,App 必须在前台;悬浮窗已启动后可以继续切换日志/保活模式
216
108
  2. **设备兼容性**:仅支持 iOS 15+ 且具备画中画功能的设备
217
- 3. **参数限制**:悬浮窗的宽度和高度都不能小于 100 像素
218
- 4. **配置时机**:`设置日志视图参数()` 必须在 `显示日志窗口()` 之前调用
219
- 5. **颜色格式**:颜色值必须使用十六进制格式(如:`#FFFFFF`)
220
- 6. **尺寸适配**:iOS 系统会对画中画窗口的尺寸进行限制和自动调整,实际显示的画中画窗口大小可能与设置的 `width` 和 `height` 参数不完全一致
221
- 7. **内容渲染**:画中画内容渲染会自动适配系统分配的实际窗口尺寸,而不是使用配置的尺寸参数
222
- 8. **脚本控制**:如果已调用 `设置是否允许脚本控制(true)`,则可以通过悬浮窗控制脚本的启停
109
+ 3. **系统限制**:悬浮窗位置和实际显示尺寸由 iOS 管理
110
+ 4. **识别标记**:日志窗口左上角默认包含识别标记,便于通过截图识别悬浮窗位置
223
111
 
224
112
  ## 故障排除
225
113
 
@@ -227,16 +115,4 @@ const showResult = $悬浮窗.显示日志窗口();
227
115
 
228
116
  - 确认设备支持悬浮窗功能
229
117
  - 检查悬浮窗权限是否已开启
230
- - 确认参数配置是否正确(宽高不小于 100)
231
-
232
- ### 悬浮窗显示异常
233
-
234
- - 检查颜色值格式是否正确
235
- - 确认字体大小设置是否合理
236
- - 验证窗口尺寸是否在有效范围内
237
-
238
- ### 脚本控制无效
239
-
240
- - 确认已调用 `设置是否允许脚本控制(true)`
241
- - 检查悬浮窗是否正常显示
242
- - 验证脚本运行状态是否正常
118
+ - 确认应用当前在前台