ms-vite-plugin 1.5.8 → 1.5.10

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.
Files changed (43) hide show
  1. package/dist/cli.js +6 -6
  2. package/dist/packaging/index.d.ts +4 -1
  3. package/dist/packaging/index.js +1 -1
  4. package/docs/api/device.md +5 -9
  5. package/docs/api/global.md +2 -2
  6. package/docs/api/jbclear.md +291 -0
  7. package/docs/api/jbdevice.md +574 -0
  8. package/docs/api/jbdylib.md +219 -0
  9. package/docs/api/jbshell.md +59 -0
  10. package/docs/api/jbsystem.md +211 -0
  11. package/docs/api/jbvpn.md +219 -0
  12. package/docs/api/pip.md +50 -15
  13. package/docs/api/plist.md +137 -0
  14. package/docs/api/ui.md +114 -0
  15. package/docs/apicn/device.md +4 -8
  16. package/docs/apicn/global.md +2 -2
  17. package/docs/apicn/pip.md +50 -15
  18. package/docs/apicn/ui.md +114 -0
  19. package/docs/apilua/device.md +5 -9
  20. package/docs/apilua/global.md +2 -2
  21. package/docs/apilua/jbclear.md +313 -0
  22. package/docs/apilua/jbdevice.md +609 -0
  23. package/docs/apilua/jbdylib.md +231 -0
  24. package/docs/apilua/jbshell.md +63 -0
  25. package/docs/apilua/jbsystem.md +225 -0
  26. package/docs/apilua/jbvpn.md +233 -0
  27. package/docs/apilua/pip.md +53 -15
  28. package/docs/apilua/plist.md +153 -0
  29. package/docs/apilua/ui.md +117 -0
  30. package/docs/apipython/device.md +6 -8
  31. package/docs/apipython/g.md +1 -1
  32. package/docs/apipython/jbclear.md +288 -0
  33. package/docs/apipython/jbdevice.md +570 -0
  34. package/docs/apipython/jbdylib.md +215 -0
  35. package/docs/apipython/jbshell.md +61 -0
  36. package/docs/apipython/jbsystem.md +216 -0
  37. package/docs/apipython/jbvpn.md +231 -0
  38. package/docs/apipython/overview.md +1 -1
  39. package/docs/apipython/pip.md +52 -15
  40. package/docs/apipython/plist.md +152 -0
  41. package/docs/apipython/ui.md +118 -0
  42. package/docs/httpapi/api.md +2 -2
  43. package/package.json +1 -1
package/docs/apicn/ui.md CHANGED
@@ -107,6 +107,47 @@ $视图.调用函数("loadData", {
107
107
  });
108
108
  ```
109
109
 
110
+ ### 调用悬浮窗函数 - 调用越狱悬浮窗网页中的 JavaScript 函数
111
+
112
+ ```typescript
113
+ function 调用悬浮窗函数(函数名: 字符串, 数据: 字典<任意类型>): 无返回值;
114
+ ```
115
+
116
+ 调用悬浮窗网页里 `registerUIFunc` 注册的函数。主界面 WebView 不受影响。没有悬浮窗网页时无效果。
117
+
118
+ **参数:**
119
+
120
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
121
+ | -------- | -------------- | -------- | ------ | ---------------------------- |
122
+ | `函数名` | 字符串 | 是 | | 悬浮窗页面 JavaScript 方法名 |
123
+ | `数据` | 字典<任意类型> | 是 | | 传递给方法的参数 |
124
+
125
+ **示例:**
126
+
127
+ ```typescript
128
+ $视图.调用悬浮窗函数("updateStatus", { status: "running", progress: 50 });
129
+ ```
130
+
131
+ ### 执行悬浮窗JS代码 - 在越狱悬浮窗网页中执行 JavaScript
132
+
133
+ ```typescript
134
+ function 执行悬浮窗JS代码(代码: 字符串): 无返回值;
135
+ ```
136
+
137
+ 在悬浮窗网页中执行 JavaScript。主界面 WebView 不受影响。没有悬浮窗网页时无效果。
138
+
139
+ **参数:**
140
+
141
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
142
+ | ------ | ------ | -------- | ------ | -------------------- |
143
+ | `代码` | 字符串 | 是 | | JavaScript 代码字符串 |
144
+
145
+ **示例:**
146
+
147
+ ```typescript
148
+ $视图.执行悬浮窗JS代码("console.log('float')");
149
+ ```
150
+
110
151
  ### 显示 Toast 提示 - 显示 Toast 提示消息
111
152
 
112
153
  ```typescript
@@ -643,6 +684,30 @@ ms.getDeviceID()
643
684
  });
644
685
  ```
645
686
 
687
+ #### getOrientation() - 获取屏幕方向
688
+
689
+ ```typescript
690
+ declare function getOrientation(): Promise<"PORTRAIT" | "LANDSCAPE">;
691
+ ```
692
+
693
+ **返回值:**
694
+
695
+ | 类型 | 描述 |
696
+ | ------------------------------------------- | ------------------------------------------------------------ |
697
+ | `Promise<"PORTRAIT" \| "LANDSCAPE">` | `"PORTRAIT"` 竖屏,`"LANDSCAPE"` 横屏 |
698
+
699
+ **说明:**
700
+
701
+ 获取当前屏幕方向。
702
+
703
+ **网页端示例:**
704
+
705
+ ```javascript
706
+ ms.getOrientation().then((orientation) => {
707
+ console.log(orientation);
708
+ });
709
+ ```
710
+
646
711
  #### getAuthCardNo() - 获取缓存的授权卡密
647
712
 
648
713
  ```typescript
@@ -707,6 +772,55 @@ ms.openURL("https://www.baidu.com")
707
772
  });
708
773
  ```
709
774
 
775
+ #### setWebWindowSize() - 设置网页窗口宽高
776
+
777
+ ```typescript
778
+ declare function setWebWindowSize(size: {
779
+ portraitWidth: number;
780
+ portraitHeight: number;
781
+ landscapeWidth: number;
782
+ landscapeHeight: number;
783
+ }): Promise<boolean>;
784
+ ```
785
+
786
+ **参数:**
787
+
788
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
789
+ | ------ | ------ | -------- | ------ | ------------------------ |
790
+ | `size` | object | 是 | | 横竖屏网页窗口像素尺寸 |
791
+
792
+ **`size` 字段:**
793
+
794
+ | 字段名 | 类型 | 是否必填 | 默认值 | 描述 |
795
+ | ----------------- | ------ | -------- | ------ | ---------------------- |
796
+ | `portraitWidth` | number | 是 | | 竖屏窗口宽度(像素) |
797
+ | `portraitHeight` | number | 是 | | 竖屏窗口高度(像素) |
798
+ | `landscapeWidth` | number | 是 | | 横屏窗口宽度(像素) |
799
+ | `landscapeHeight` | number | 是 | | 横屏窗口高度(像素) |
800
+
801
+ **返回值:**
802
+
803
+ | 类型 | 描述 |
804
+ | ------------------ | ------------------------------------- |
805
+ | `Promise<boolean>` | 如果设置成功返回 true,否则返回 false |
806
+
807
+ **说明:**
808
+
809
+ 仅越狱包可用。一次同时设置竖屏和横屏的网页窗口像素尺寸。未调用过时,横竖屏都默认使用对应朝向屏幕宽高的 60%。免越狱包调用返回 `false`。
810
+
811
+ **网页端示例:**
812
+
813
+ ```javascript
814
+ ms.setWebWindowSize({
815
+ portraitWidth: 700,
816
+ portraitHeight: 1200,
817
+ landscapeWidth: 1200,
818
+ landscapeHeight: 700,
819
+ }).then((ok) => {
820
+ console.log(ok);
821
+ });
822
+ ```
823
+
710
824
  ### 完整示例
711
825
 
712
826
  **完整的控制面板示例:**
@@ -56,12 +56,9 @@ print("剩余存储: " .. tostring(storage.free) .. tostring(storage.unit))
56
56
 
57
57
  ## 设备标识信息
58
58
 
59
- ### getDeviceID - 获取设备的唯一标识符(ID)。
59
+ ### getDeviceID - 获取设备 ID。
60
60
 
61
- **注意事项:**
62
-
63
- - 这个 ID 卸载重装 APP 后会改变。
64
- - 更新 APP 后,不会改变。
61
+ 越狱包返回芯片生成的固定 ID,卸载重装不变;免越狱包返回 IDFV,卸载重装会改变。
65
62
 
66
63
  ```lua
67
64
  ---@return string
@@ -70,14 +67,13 @@ function getDeviceID() end
70
67
 
71
68
  **返回值:**
72
69
 
73
- | 类型 | 描述 |
74
- | ------ | ---------------- |
75
- | string | 设备的唯一标识符 |
70
+ | 类型 | 描述 |
71
+ | ------ | ------- |
72
+ | string | 设备 ID |
76
73
 
77
74
  **示例:**
78
75
 
79
76
  ```lua
80
- -- 获取设备ID
81
77
  local uuid = device.getDeviceID()
82
78
  print("设备ID = " .. tostring(uuid))
83
79
  ```
@@ -56,10 +56,10 @@ print("调试模式: " .. tostring(IsDebug))
56
56
 
57
57
  #### **Platform**
58
58
 
59
- 平台信息,标识当前应用运行的平台,例如 `"ios"`、`"android"`。
59
+ 免越狱包为 `"ios"`,越狱包为 `"ios_jb"`。
60
60
 
61
61
  ```lua
62
- ---@type string
62
+ ---@type "ios"|"ios_jb"
63
63
  Platform = nil
64
64
  ```
65
65
 
@@ -0,0 +1,313 @@
1
+ # 清理模块 (JBClear)
2
+
3
+ 模块表是内置全局 `jbclear`,直接调用即可。不要 `require` 宿主模块。
4
+
5
+ 仅越狱包可用。免越狱包没有 `jbclear`。
6
+
7
+ ## API 参考
8
+
9
+ ### keychain - 按关联名清理钥匙串。
10
+
11
+ 空串返回 `false`。
12
+
13
+ ```lua
14
+ ---@param identifier string
15
+ ---@return boolean
16
+ function keychain(identifier) end
17
+ ```
18
+
19
+ **参数:**
20
+
21
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
22
+ | ------------ | ------ | -------- | ------ | -------------------------------------- |
23
+ | `identifier` | string | 是 | - | 钥匙串关联名,例如 `"demo.sample.app"` |
24
+
25
+ **返回值:**
26
+
27
+ | 类型 | 描述 |
28
+ | --------- | ------------- |
29
+ | `boolean` | 成功为 `true` |
30
+
31
+ **示例:**
32
+
33
+ ```lua
34
+ jbclear.keychain("demo.sample.app")
35
+ ```
36
+
37
+ ### allKeychain - 清理第三方应用钥匙串。
38
+
39
+ 不清理本 App。
40
+
41
+ ```lua
42
+ ---@return boolean
43
+ function allKeychain() end
44
+ ```
45
+
46
+ **返回值:**
47
+
48
+ | 类型 | 描述 |
49
+ | --------- | ------------- |
50
+ | `boolean` | 成功为 `true` |
51
+
52
+ **示例:**
53
+
54
+ ```lua
55
+ jbclear.allKeychain()
56
+ ```
57
+
58
+ ### cookies - 清理 Safari Cookies。
59
+
60
+ ```lua
61
+ ---@return boolean
62
+ function cookies() end
63
+ ```
64
+
65
+ **返回值:**
66
+
67
+ | 类型 | 描述 |
68
+ | --------- | ------------- |
69
+ | `boolean` | 成功为 `true` |
70
+
71
+ **示例:**
72
+
73
+ ```lua
74
+ jbclear.cookies()
75
+ ```
76
+
77
+ ### caches - 清理系统缓存。
78
+
79
+ 必须传表。默认会重建图标缓存。传 `{ noUicache = true }` 跳过。
80
+
81
+ ```lua
82
+ ---@param options table
83
+ ---@return boolean
84
+ function caches(options) end
85
+ ```
86
+
87
+ **参数:**
88
+
89
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
90
+ | --------- | ----- | -------- | ------ | ----------------------------------------- |
91
+ | `options` | table | 是 | `{}` | `{ noUicache = true }` 时跳过重建图标缓存 |
92
+
93
+ **返回值:**
94
+
95
+ | 类型 | 描述 |
96
+ | --------- | ------------- |
97
+ | `boolean` | 成功为 `true` |
98
+
99
+ **示例:**
100
+
101
+ ```lua
102
+ jbclear.caches({})
103
+ jbclear.caches { noUicache = true }
104
+ ```
105
+
106
+ ### photos - 删除本机相册里的本地照片。
107
+
108
+ 不影响 iCloud 照片。
109
+
110
+ ```lua
111
+ ---@return boolean
112
+ function photos() end
113
+ ```
114
+
115
+ **返回值:**
116
+
117
+ | 类型 | 描述 |
118
+ | --------- | ------------- |
119
+ | `boolean` | 成功为 `true` |
120
+
121
+ **示例:**
122
+
123
+ ```lua
124
+ jbclear.photos()
125
+ ```
126
+
127
+ ### appData - 清理指定应用的本地数据,不卸载应用。
128
+
129
+ 先结束该应用进程,再清数据容器、App Group、扩展数据容器,以及该应用钥匙串。不卸载。空包名或本 App 及其扩展返回 `false`。
130
+
131
+ ```lua
132
+ ---@param bundleId string
133
+ ---@return boolean
134
+ function appData(bundleId) end
135
+ ```
136
+
137
+ **参数:**
138
+
139
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
140
+ | ---------- | ------ | -------- | ------ | -------------------------------------- |
141
+ | `bundleId` | string | 是 | - | 应用包标识符,例如 `"demo.sample.app"` |
142
+
143
+ **返回值:**
144
+
145
+ | 类型 | 描述 |
146
+ | --------- | ------------- |
147
+ | `boolean` | 成功为 `true` |
148
+
149
+ **示例:**
150
+
151
+ ```lua
152
+ jbclear.appData("demo.sample.app")
153
+ ```
154
+
155
+ ### getIdfa - 读取整机广告标识(IDFA)。
156
+
157
+ ```lua
158
+ ---@return string|nil
159
+ function getIdfa() end
160
+ ```
161
+
162
+ **返回值:**
163
+
164
+ | 类型 | 描述 |
165
+ | --------------- | ----------------------------- |
166
+ | `string \| nil` | UUID 字符串;读不到返回 `nil` |
167
+
168
+ **示例:**
169
+
170
+ ```lua
171
+ local idfa = jbclear.getIdfa()
172
+ ```
173
+
174
+ ### resetIdfa - 重置整机广告标识(IDFA)。
175
+
176
+ 之后所有 App 读到的 IDFA 都会变。
177
+
178
+ ```lua
179
+ ---@return string|nil
180
+ function resetIdfa() end
181
+ ```
182
+
183
+ **返回值:**
184
+
185
+ | 类型 | 描述 |
186
+ | --------------- | ----------------------------- |
187
+ | `string \| nil` | 重置前的 UUID;失败返回 `nil` |
188
+
189
+ **示例:**
190
+
191
+ ```lua
192
+ local old = jbclear.resetIdfa()
193
+ if old then
194
+ file.writeFile("idfa.txt", old)
195
+ end
196
+ ```
197
+
198
+ ### setIdfa - 写入整机广告标识(IDFA)。
199
+
200
+ ```lua
201
+ ---@param value string
202
+ ---@return string|nil
203
+ function setIdfa(value) end
204
+ ```
205
+
206
+ **参数:**
207
+
208
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
209
+ | ------- | ------ | -------- | ------ | ----------------------------------- |
210
+ | `value` | string | 是 | - | `getIdfa` / `resetIdfa` 返回的 UUID |
211
+
212
+ **返回值:**
213
+
214
+ | 类型 | 描述 |
215
+ | --------------- | ----------------------------- |
216
+ | `string \| nil` | 写入前的 UUID;失败返回 `nil` |
217
+
218
+ **示例:**
219
+
220
+ ```lua
221
+ local old = file.readFile("idfa.txt")
222
+ if old then
223
+ jbclear.setIdfa(old)
224
+ end
225
+ ```
226
+
227
+ ### getIdfv - 读取指定应用所属开发商的 IDFV。
228
+
229
+ ```lua
230
+ ---@param bundleId string
231
+ ---@return string|nil
232
+ function getIdfv(bundleId) end
233
+ ```
234
+
235
+ **参数:**
236
+
237
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
238
+ | ---------- | ------ | -------- | ------ | -------------------------------------- |
239
+ | `bundleId` | string | 是 | - | 应用包标识符,例如 `"demo.sample.app"` |
240
+
241
+ **返回值:**
242
+
243
+ | 类型 | 描述 |
244
+ | --------------- | ----------------------------- |
245
+ | `string \| nil` | UUID 字符串;读不到返回 `nil` |
246
+
247
+ **示例:**
248
+
249
+ ```lua
250
+ local idfv = jbclear.getIdfv("demo.sample.app")
251
+ ```
252
+
253
+ ### resetIdfv - 重置指定应用所属开发商的 IDFV。
254
+
255
+ 同一开发商的 App 会一起变。
256
+
257
+ ```lua
258
+ ---@param bundleId string
259
+ ---@return string|nil
260
+ function resetIdfv(bundleId) end
261
+ ```
262
+
263
+ **参数:**
264
+
265
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
266
+ | ---------- | ------ | -------- | ------ | -------------------------------------- |
267
+ | `bundleId` | string | 是 | - | 应用包标识符,例如 `"demo.sample.app"` |
268
+
269
+ **返回值:**
270
+
271
+ | 类型 | 描述 |
272
+ | --------------- | ----------------------------- |
273
+ | `string \| nil` | 重置前的 UUID;失败返回 `nil` |
274
+
275
+ **示例:**
276
+
277
+ ```lua
278
+ local old = jbclear.resetIdfv("demo.sample.app")
279
+ if old then
280
+ file.writeFile("idfv.txt", old)
281
+ end
282
+ ```
283
+
284
+ ### setIdfv - 写入指定应用所属开发商的 IDFV。
285
+
286
+ ```lua
287
+ ---@param bundleId string
288
+ ---@param value string
289
+ ---@return string|nil
290
+ function setIdfv(bundleId, value) end
291
+ ```
292
+
293
+ **参数:**
294
+
295
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
296
+ | ---------- | ------ | -------- | ------ | -------------------------------------- |
297
+ | `bundleId` | string | 是 | - | 应用包标识符,例如 `"demo.sample.app"` |
298
+ | `value` | string | 是 | - | `getIdfv` / `resetIdfv` 返回的 UUID |
299
+
300
+ **返回值:**
301
+
302
+ | 类型 | 描述 |
303
+ | --------------- | ----------------------------- |
304
+ | `string \| nil` | 写入前的 UUID;失败返回 `nil` |
305
+
306
+ **示例:**
307
+
308
+ ```lua
309
+ local old = file.readFile("idfv.txt")
310
+ if old then
311
+ jbclear.setIdfv("demo.sample.app", old)
312
+ end
313
+ ```