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.
- package/dist/cli.js +6 -6
- package/dist/packaging/index.d.ts +4 -1
- package/dist/packaging/index.js +1 -1
- package/docs/api/device.md +5 -9
- package/docs/api/global.md +2 -2
- package/docs/api/jbclear.md +291 -0
- package/docs/api/jbdevice.md +574 -0
- package/docs/api/jbdylib.md +219 -0
- package/docs/api/jbshell.md +59 -0
- package/docs/api/jbsystem.md +211 -0
- package/docs/api/jbvpn.md +219 -0
- package/docs/api/pip.md +50 -15
- package/docs/api/plist.md +137 -0
- package/docs/api/ui.md +114 -0
- package/docs/apicn/device.md +4 -8
- package/docs/apicn/global.md +2 -2
- package/docs/apicn/pip.md +50 -15
- package/docs/apicn/ui.md +114 -0
- package/docs/apilua/device.md +5 -9
- package/docs/apilua/global.md +2 -2
- package/docs/apilua/jbclear.md +313 -0
- package/docs/apilua/jbdevice.md +609 -0
- package/docs/apilua/jbdylib.md +231 -0
- package/docs/apilua/jbshell.md +63 -0
- package/docs/apilua/jbsystem.md +225 -0
- package/docs/apilua/jbvpn.md +233 -0
- package/docs/apilua/pip.md +53 -15
- package/docs/apilua/plist.md +153 -0
- package/docs/apilua/ui.md +117 -0
- package/docs/apipython/device.md +6 -8
- package/docs/apipython/g.md +1 -1
- package/docs/apipython/jbclear.md +288 -0
- package/docs/apipython/jbdevice.md +570 -0
- package/docs/apipython/jbdylib.md +215 -0
- package/docs/apipython/jbshell.md +61 -0
- package/docs/apipython/jbsystem.md +216 -0
- package/docs/apipython/jbvpn.md +231 -0
- package/docs/apipython/overview.md +1 -1
- package/docs/apipython/pip.md +52 -15
- package/docs/apipython/plist.md +152 -0
- package/docs/apipython/ui.md +118 -0
- package/docs/httpapi/api.md +2 -2
- 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
|
**完整的控制面板示例:**
|
package/docs/apilua/device.md
CHANGED
|
@@ -56,12 +56,9 @@ print("剩余存储: " .. tostring(storage.free) .. tostring(storage.unit))
|
|
|
56
56
|
|
|
57
57
|
## 设备标识信息
|
|
58
58
|
|
|
59
|
-
### getDeviceID -
|
|
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
|
```
|
package/docs/apilua/global.md
CHANGED
|
@@ -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
|
+
```
|