• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 系统恢复<a name="ZH-CN_TOPIC_0000001164895648"></a>
2
3## 导入模块<a name="zh-cn_topic_0000001163565327_section370mcpsimp"></a>
4
5```
6import update from '@ohos.update'
7```
8
9## 权限列表<a name="zh-cn_topic_0000001163565327_section373mcpsimp"></a>
10
1112
13## 方法<a name="zh-cn_topic_0000001163565327_section1319529172015"></a>
14
15## verifyUpdatePackage\(upgradeFile: string, certsFile: string\): void<a name="zh-cn_topic_0000001163565327_section16874643181519"></a>
16
17升级前检查升级包是否有效。
18
19**参数:**
20
21<a name="zh-cn_topic_0000001163565327_table1987419434154"></a>
22<table><thead align="left"><tr id="zh-cn_topic_0000001163565327_row16875643191511"><th class="cellrowborder" valign="top" width="11.219999999999999%" id="mcps1.1.5.1.1"><p id="zh-cn_topic_0000001163565327_p12875843191519"><a name="zh-cn_topic_0000001163565327_p12875843191519"></a><a name="zh-cn_topic_0000001163565327_p12875843191519"></a>参数名</p>
23</th>
24<th class="cellrowborder" valign="top" width="18.22%" id="mcps1.1.5.1.2"><p id="zh-cn_topic_0000001163565327_p12875194316156"><a name="zh-cn_topic_0000001163565327_p12875194316156"></a><a name="zh-cn_topic_0000001163565327_p12875194316156"></a>类型</p>
25</th>
26<th class="cellrowborder" valign="top" width="6.1899999999999995%" id="mcps1.1.5.1.3"><p id="zh-cn_topic_0000001163565327_p12875104312152"><a name="zh-cn_topic_0000001163565327_p12875104312152"></a><a name="zh-cn_topic_0000001163565327_p12875104312152"></a>必填</p>
27</th>
28<th class="cellrowborder" valign="top" width="64.37%" id="mcps1.1.5.1.4"><p id="zh-cn_topic_0000001163565327_p98751743161513"><a name="zh-cn_topic_0000001163565327_p98751743161513"></a><a name="zh-cn_topic_0000001163565327_p98751743161513"></a>说明</p>
29</th>
30</tr>
31</thead>
32<tbody><tr id="zh-cn_topic_0000001163565327_row19875144311510"><td class="cellrowborder" valign="top" width="11.219999999999999%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0000001163565327_p17883191212014"><a name="zh-cn_topic_0000001163565327_p17883191212014"></a><a name="zh-cn_topic_0000001163565327_p17883191212014"></a>upgradeFile</p>
33</td>
34<td class="cellrowborder" valign="top" width="18.22%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0000001163565327_p0875164318155"><a name="zh-cn_topic_0000001163565327_p0875164318155"></a><a name="zh-cn_topic_0000001163565327_p0875164318155"></a>string</p>
35</td>
36<td class="cellrowborder" valign="top" width="6.1899999999999995%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0000001163565327_p108751043141517"><a name="zh-cn_topic_0000001163565327_p108751043141517"></a><a name="zh-cn_topic_0000001163565327_p108751043141517"></a>是</p>
37</td>
38<td class="cellrowborder" valign="top" width="64.37%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0000001163565327_p1987519439152"><a name="zh-cn_topic_0000001163565327_p1987519439152"></a><a name="zh-cn_topic_0000001163565327_p1987519439152"></a>待校验的升级包路径</p>
39</td>
40</tr>
41<tr id="zh-cn_topic_0000001163565327_row194175815171"><td class="cellrowborder" valign="top" width="11.219999999999999%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0000001163565327_p20957580177"><a name="zh-cn_topic_0000001163565327_p20957580177"></a><a name="zh-cn_topic_0000001163565327_p20957580177"></a>certsFile</p>
42</td>
43<td class="cellrowborder" valign="top" width="18.22%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0000001163565327_p1895158171714"><a name="zh-cn_topic_0000001163565327_p1895158171714"></a><a name="zh-cn_topic_0000001163565327_p1895158171714"></a>string</p>
44</td>
45<td class="cellrowborder" valign="top" width="6.1899999999999995%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0000001163565327_p395125851716"><a name="zh-cn_topic_0000001163565327_p395125851716"></a><a name="zh-cn_topic_0000001163565327_p395125851716"></a>是</p>
46</td>
47<td class="cellrowborder" valign="top" width="64.37%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0000001163565327_p129545811714"><a name="zh-cn_topic_0000001163565327_p129545811714"></a><a name="zh-cn_topic_0000001163565327_p129545811714"></a>证书路径</p>
48</td>
49</tr>
50</tbody>
51</table>
52
53**返回值:**
54
5556
57**示例:**
58
59```
60var getVar = update.getUpdater();
61getVar.on("verifyProgress", function (callback){
62    console.info('on verifyProgress ' + callback.percent);
63});
64getVar.verifyUpdatePackage("XXX", "XXX");
65getVar.off("verifyProgress");
66```
67
68## rebootAndCleanUserData\(\): Promise<number\><a name="zh-cn_topic_0000001163565327_section3242122116516"></a>
69
70重启设备并清除用户分区数据。
71
72**参数:**
73
7475
76**返回值:**
77
78<a name="zh-cn_topic_0000001163565327_table9242921652"></a>
79<table><thead align="left"><tr id="zh-cn_topic_0000001163565327_row724232113519"><th class="cellrowborder" valign="top" width="16.46%" id="mcps1.1.3.1.1"><p id="zh-cn_topic_0000001163565327_p1224210211454"><a name="zh-cn_topic_0000001163565327_p1224210211454"></a><a name="zh-cn_topic_0000001163565327_p1224210211454"></a>类型</p>
80</th>
81<th class="cellrowborder" valign="top" width="83.54%" id="mcps1.1.3.1.2"><p id="zh-cn_topic_0000001163565327_p1924210213517"><a name="zh-cn_topic_0000001163565327_p1924210213517"></a><a name="zh-cn_topic_0000001163565327_p1924210213517"></a>说明</p>
82</th>
83</tr>
84</thead>
85<tbody><tr id="zh-cn_topic_0000001163565327_row6242521053"><td class="cellrowborder" valign="top" width="16.46%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0000001163565327_p8242162115510"><a name="zh-cn_topic_0000001163565327_p8242162115510"></a><a name="zh-cn_topic_0000001163565327_p8242162115510"></a>Promise&lt;number&gt;</p>
86</td>
87<td class="cellrowborder" valign="top" width="83.54%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0000001163565327_p6242021157"><a name="zh-cn_topic_0000001163565327_p6242021157"></a><a name="zh-cn_topic_0000001163565327_p6242021157"></a>Promise示例,用于异步获取结果。</p>
88</td>
89</tr>
90</tbody>
91</table>
92
93**示例:**
94
95```
96var getVar = update.getUpdater();
97p = getVar.rebootAndCleanUserData();
98p.then(function (value) {
99    console.info("rebootAndCleanUserData promise success: " + value);
100}).catch(function (err) {
101    console.info("rebootAndCleanUserData promise error: " + err.code);
102});
103```
104
105## rebootAndCleanUserData\(callback: AsyncCallback<number\>\): void<a name="zh-cn_topic_0000001163565327_section15242102114516"></a>
106
107重启设备并清除用户分区数据。
108
109**参数:**
110
111<a name="zh-cn_topic_0000001163565327_table62421211154"></a>
112<table><thead align="left"><tr id="zh-cn_topic_0000001163565327_row92426211952"><th class="cellrowborder" valign="top" width="11.219999999999999%" id="mcps1.1.5.1.1"><p id="zh-cn_topic_0000001163565327_p124342114519"><a name="zh-cn_topic_0000001163565327_p124342114519"></a><a name="zh-cn_topic_0000001163565327_p124342114519"></a>参数名</p>
113</th>
114<th class="cellrowborder" valign="top" width="18.22%" id="mcps1.1.5.1.2"><p id="zh-cn_topic_0000001163565327_p524315218516"><a name="zh-cn_topic_0000001163565327_p524315218516"></a><a name="zh-cn_topic_0000001163565327_p524315218516"></a>类型</p>
115</th>
116<th class="cellrowborder" valign="top" width="6.1899999999999995%" id="mcps1.1.5.1.3"><p id="zh-cn_topic_0000001163565327_p122436211858"><a name="zh-cn_topic_0000001163565327_p122436211858"></a><a name="zh-cn_topic_0000001163565327_p122436211858"></a>必填</p>
117</th>
118<th class="cellrowborder" valign="top" width="64.37%" id="mcps1.1.5.1.4"><p id="zh-cn_topic_0000001163565327_p1243172118512"><a name="zh-cn_topic_0000001163565327_p1243172118512"></a><a name="zh-cn_topic_0000001163565327_p1243172118512"></a>说明</p>
119</th>
120</tr>
121</thead>
122<tbody><tr id="zh-cn_topic_0000001163565327_row8243122114510"><td class="cellrowborder" valign="top" width="11.219999999999999%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0000001163565327_p152435211151"><a name="zh-cn_topic_0000001163565327_p152435211151"></a><a name="zh-cn_topic_0000001163565327_p152435211151"></a>callback</p>
123</td>
124<td class="cellrowborder" valign="top" width="18.22%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0000001163565327_p024372115516"><a name="zh-cn_topic_0000001163565327_p024372115516"></a><a name="zh-cn_topic_0000001163565327_p024372115516"></a>Function</p>
125</td>
126<td class="cellrowborder" valign="top" width="6.1899999999999995%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0000001163565327_p1724312217510"><a name="zh-cn_topic_0000001163565327_p1724312217510"></a><a name="zh-cn_topic_0000001163565327_p1724312217510"></a>是</p>
127</td>
128<td class="cellrowborder" valign="top" width="64.37%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0000001163565327_p22435211855"><a name="zh-cn_topic_0000001163565327_p22435211855"></a><a name="zh-cn_topic_0000001163565327_p22435211855"></a>AsyncCallback&lt;number&gt;</p>
129</td>
130</tr>
131</tbody>
132</table>
133
134**返回值:**
135
136137
138**示例:**
139
140```
141var getVar = update.getUpdater();
142getVar.rebootAndCleanUserData(function (err, data) {
143    if (err.code == 0) {
144        console.info("rebootAndCleanUserData callback success:" + data)
145    } else {
146        console.info("rebootAndCleanUserData callback err:" + err.code)
147    }
148});
149```
150
151## applyNewVersion\(\): Promise<number\><a name="zh-cn_topic_0000001163565327_section129661811195815"></a>
152
153重启设备后安装升级包。
154
155**参数:**
156
157158
159**返回值:**
160
161<a name="zh-cn_topic_0000001163565327_table14773154913191"></a>
162<table><thead align="left"><tr id="zh-cn_topic_0000001163565327_row877314991912"><th class="cellrowborder" valign="top" width="16.46%" id="mcps1.1.3.1.1"><p id="zh-cn_topic_0000001163565327_p1077313493199"><a name="zh-cn_topic_0000001163565327_p1077313493199"></a><a name="zh-cn_topic_0000001163565327_p1077313493199"></a>类型</p>
163</th>
164<th class="cellrowborder" valign="top" width="83.54%" id="mcps1.1.3.1.2"><p id="zh-cn_topic_0000001163565327_p1677411498195"><a name="zh-cn_topic_0000001163565327_p1677411498195"></a><a name="zh-cn_topic_0000001163565327_p1677411498195"></a>说明</p>
165</th>
166</tr>
167</thead>
168<tbody><tr id="zh-cn_topic_0000001163565327_row1977413496194"><td class="cellrowborder" valign="top" width="16.46%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0000001163565327_p67742498197"><a name="zh-cn_topic_0000001163565327_p67742498197"></a><a name="zh-cn_topic_0000001163565327_p67742498197"></a>Promise&lt;number&gt;</p>
169</td>
170<td class="cellrowborder" valign="top" width="83.54%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0000001163565327_p4774164916199"><a name="zh-cn_topic_0000001163565327_p4774164916199"></a><a name="zh-cn_topic_0000001163565327_p4774164916199"></a>Promise示例,用于异步获取结果。</p>
171</td>
172</tr>
173</tbody>
174</table>
175
176**示例:**
177
178```
179var getVar = update.getUpdater();
180p.then(function (value) {
181    console.info("applyNewVersion promise success: " + value);
182}).catch(function (err) {
183    console.info("applyNewVersion promise error: " + err.code);
184});
185```
186
187## applyNewVersion\(callback: AsyncCallback<number\>\): void<a name="zh-cn_topic_0000001163565327_section3381192816421"></a>
188
189重启设备后安装升级包。
190
191**参数:**
192
193<a name="zh-cn_topic_0000001163565327_table14473145217456"></a>
194<table><thead align="left"><tr id="zh-cn_topic_0000001163565327_row1052235294518"><th class="cellrowborder" valign="top" width="11.219999999999999%" id="mcps1.1.5.1.1"><p id="zh-cn_topic_0000001163565327_p15522195234514"><a name="zh-cn_topic_0000001163565327_p15522195234514"></a><a name="zh-cn_topic_0000001163565327_p15522195234514"></a>参数名</p>
195</th>
196<th class="cellrowborder" valign="top" width="18.22%" id="mcps1.1.5.1.2"><p id="zh-cn_topic_0000001163565327_p1852285215454"><a name="zh-cn_topic_0000001163565327_p1852285215454"></a><a name="zh-cn_topic_0000001163565327_p1852285215454"></a>类型</p>
197</th>
198<th class="cellrowborder" valign="top" width="6.1899999999999995%" id="mcps1.1.5.1.3"><p id="zh-cn_topic_0000001163565327_p125221452154514"><a name="zh-cn_topic_0000001163565327_p125221452154514"></a><a name="zh-cn_topic_0000001163565327_p125221452154514"></a>必填</p>
199</th>
200<th class="cellrowborder" valign="top" width="64.37%" id="mcps1.1.5.1.4"><p id="zh-cn_topic_0000001163565327_p552214521459"><a name="zh-cn_topic_0000001163565327_p552214521459"></a><a name="zh-cn_topic_0000001163565327_p552214521459"></a>说明</p>
201</th>
202</tr>
203</thead>
204<tbody><tr id="zh-cn_topic_0000001163565327_row165221352124511"><td class="cellrowborder" valign="top" width="11.219999999999999%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0000001163565327_p85221523450"><a name="zh-cn_topic_0000001163565327_p85221523450"></a><a name="zh-cn_topic_0000001163565327_p85221523450"></a>callback</p>
205</td>
206<td class="cellrowborder" valign="top" width="18.22%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0000001163565327_p1452275204516"><a name="zh-cn_topic_0000001163565327_p1452275204516"></a><a name="zh-cn_topic_0000001163565327_p1452275204516"></a>Function</p>
207</td>
208<td class="cellrowborder" valign="top" width="6.1899999999999995%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0000001163565327_p1152275224511"><a name="zh-cn_topic_0000001163565327_p1152275224511"></a><a name="zh-cn_topic_0000001163565327_p1152275224511"></a>是</p>
209</td>
210<td class="cellrowborder" valign="top" width="64.37%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0000001163565327_p175228526455"><a name="zh-cn_topic_0000001163565327_p175228526455"></a><a name="zh-cn_topic_0000001163565327_p175228526455"></a>AsyncCallback&lt;number&gt;</p>
211</td>
212</tr>
213</tbody>
214</table>
215
216**返回值:**
217
218219
220**示例:**
221
222```
223var getVar = update.getUpdater();
224getVar.applyNewVersion(function (err, data) {
225    if (err.code == 0) {
226        console.info("applyNewVersion callback success:" + data)
227    } else {
228        console.info("applyNewVersion callback err:" + err.code)
229    }
230});
231```
232
233