1# 设置系统时间、时区 2 3本模块用来设置、获取当前系统时间、系统日期和系统时区。 4 5> **说明:** 6> 7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```js 12import systemTime from '@ohos.systemTime'; 13``` 14 15## systemTime.setTime 16 17setTime(time : number, callback : AsyncCallback<void>) : void 18 19设置系统时间,使用callback异步回调。 20 21**需要权限:** ohos.permission.SET_TIME 22 23**系统能力:** SystemCapability.Miscservices.Time 24 25**参数:** 26 27| 参数名 | 类型 | 必填 | 说明 | 28| -------- | -------- | -------- | -------- | 29| time | number | 是 | 目标时间戳(ms)。 | 30| callback | AsyncCallback<void> | 是 | 回调函数。 | 31 32**示例:** 33 34```js 35// time对应的时间为2021-01-20 02:36:25 36let time = 1611081385000; 37systemTime.setTime(time, (error) => { 38 if (error) { 39 console.error(`Failed to set systemTime. Cause:` + JSON.stringify(error)); 40 return; 41 } 42 console.log('Succeeded in setting systemTime.'); 43}); 44``` 45 46## systemTime.setTime 47 48setTime(time : number) : Promise<void> 49 50设置系统时间,使用Promise异步回调。 51 52**需要权限:** ohos.permission.SET_TIME 53 54**系统能力:** SystemCapability.MiscServices.Time 55 56**参数:** 57 58| 参数名 | 类型 | 必填 | 说明 | 59| -------- | -------- | -------- | -------- | 60| time | number | 是 | 目标时间戳(ms)。 | 61 62**返回值:** 63 64| 类型 | 说明 | 65| -------- | -------- | 66| Promise<void> | 无返回结果的Promise对象。 | 67 68**示例:** 69 70```js 71// time对应的时间为2021-01-20 02:36:25 72let time = 1611081385000; 73systemTime.setTime(time).then(() => { 74 console.log('Succeeded in setting systemTime.'); 75}).catch((error) => { 76 console.error(`Failed to set systemTime. Cause:` + JSON.stringify(error)); 77}); 78``` 79 80## systemTime.getCurrentTime<sup>8+</sup> 81 82getCurrentTime(isNano?: boolean, callback: AsyncCallback<number>): void 83 84获取自Unix纪元以来经过的时间,使用callback异步回调。 85 86**系统能力:** SystemCapability.MiscServices.Time 87 88**参数:** 89 90| 参数名 | 类型 | 必填 | 说明 | 91| -------- | -------- | -------- | -------- | 92| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 93| callback | AsyncCallback<number> | 是 | 回调函数,返回自Unix纪元以来经过的时间。 | 94 95**示例:** 96 97```js 98systemTime.getCurrentTime(true, (error, data) => { 99 if (error) { 100 console.error(`Failed to get systemTime. Cause:` + JSON.stringify(error)); 101 return; 102 } 103 console.log(`Succeeded in getting systemTime.Data: ` + JSON.stringify(data)); 104}); 105``` 106 107## systemTime.getCurrentTime<sup>8+</sup> 108 109getCurrentTime(isNano?: boolean): Promise<number> 110 111获取自Unix纪元以来经过的时间,使用Promise异步回调。 112 113**系统能力:** SystemCapability.MiscServices.Time 114 115**参数:** 116 117| 参数名 | 类型 | 必填 | 说明 | 118| -------- | -------- | -------- | -------- | 119| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 120 121**返回值:** 122 123| 类型 | 说明 | 124| -------- | -------- | 125| Promise<number> | Promise对象,返回自Unix纪元以来经过的时间。 | 126 127**示例:** 128 129```js 130systemTime.getCurrentTime().then((data) => { 131 console.log(`Succeeded in getting systemTime.Data: ` + JSON.stringify(data)); 132}).catch((error) => { 133 console.error(`Failed to get systemTime. Cause:` + JSON.stringify(error)); 134}); 135``` 136 137## systemTime.getRealActiveTime<sup>8+</sup> 138 139getRealActiveTime(isNano?: boolean, callback: AsyncCallback<number>): void 140 141获取自系统启动以来经过的时间,不包括深度睡眠时间,使用callback异步回调。 142 143**系统能力:** SystemCapability.MiscServices.Time 144 145**参数:** 146 147| 参数名 | 类型 | 必填 | 说明 | 148| -------- | -------- | -------- | -------- | 149| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 150| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,但不包括深度睡眠时间。 | 151 152**示例:** 153 154```js 155systemTime.getRealActiveTime(true, (error, data) => { 156 if (error) { 157 console.error(`Failed to get real active systemTime. Cause:` + JSON.stringify(error)); 158 return; 159 } 160 console.log(`Succeeded in getting real active systemTime. Data: ` + JSON.stringify(data)); 161}); 162``` 163 164## systemTime.getRealActiveTime<sup>8+</sup> 165 166getRealActiveTime(isNano?: boolean): Promise<number> 167 168获取自系统启动以来经过的时间,不包括深度睡眠时间,使用Promise异步回调。 169 170**系统能力:** SystemCapability.MiscServices.Time 171 172**参数:** 173 174| 参数名 | 类型 | 必填 | 说明 | 175| -------- | -------- | -------- | -------- | 176| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 177 178**返回值:** 179 180| 类型 | 说明 | 181| -------- | -------- | 182| Promise<number> | Promise对象,返回自系统启动以来经过的时间,但不包括深度睡眠时间。 | 183 184**示例:** 185 186```js 187systemTime.getRealActiveTime().then((data) => { 188 console.log(`Succeeded in getting real active systemTime. Data: ` + JSON.stringify(data)); 189}).catch((error) => { 190 console.error(`Failed to get real active systemTime. Cause:` + JSON.stringify(error)); 191}); 192``` 193 194## systemTime.getRealTime<sup>8+</sup> 195 196getRealTime(isNano?: boolean, callback: AsyncCallback<number>): void 197 198获取自系统启动以来经过的时间,包括深度睡眠时间,使用callback异步回调。 199 200**系统能力:** SystemCapability.MiscServices.Time 201 202**参数:** 203 204| 参数名 | 类型 | 必填 | 说明 | 205| -------- | -------- | -------- | -------- | 206| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 207| callback | AsyncCallback<number> | 是 | 回调函数,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 208 209**示例:** 210 211```js 212systemTime.getRealTime(true, (error, data) => { 213 if (error) { 214 console.error(`Failed to get real systemTime. Cause:` + JSON.stringify(error)); 215 return; 216 } 217 console.log(`Succeeded in getting real active systemTime. Data: ` + JSON.stringify(data)); 218}); 219``` 220 221## systemTime.getRealTime<sup>8+</sup> 222 223getRealTime(isNano?: boolean): Promise<number> 224 225获取自系统启动以来经过的时间,包括深度睡眠时间,使用Promise异步回调。 226 227**系统能力:** SystemCapability.MiscServices.Time 228 229**参数:** 230 231| 参数名 | 类型 | 必填 | 说明 | 232| -------- | -------- | -------- | -------- | 233| isNano | boolean | 否 | 如果是true,返回纳秒数;否则返回毫秒数。 | 234 235**返回值:** 236 237| 类型 | 说明 | 238| -------- | -------- | 239| Promise<number> | Promise对象,返回自系统启动以来经过的时间,包括深度睡眠时间。 | 240 241**示例:** 242 243```js 244systemTime.getRealTime().then((data) => { 245 console.log(`Succeeded in getting real active systemTime. Data: ` + JSON.stringify(data)); 246}).catch((error) => { 247 console.error(`Failed to get real systemTime. Cause:` + JSON.stringify(error)); 248}); 249``` 250 251## systemTime.setDate 252 253setDate(date: Date, callback: AsyncCallback<void>): void 254 255设置系统日期,使用callback异步回调。 256 257**需要权限:** ohos.permission.SET_TIME 258 259**系统能力:** SystemCapability.MiscServices.Time 260 261**参数:** 262 263| 参数名 | 类型 | 必填 | 说明 | 264| -------- | -------- | -------- | -------- | 265| date | Date | 是 | 目标日期。 | 266| callback | AsyncCallback<void> | 是 | 回调函数。 | 267 268**示例:** 269 270```js 271let data = new Date("October 13, 2020 11:13:00"); 272systemTime.setDate(data,(error) => { 273 if (error) { 274 console.error('Failed to set systemDate. Cause: ' + JSON.stringify(error)); 275 return; 276} 277 console.info('Succeeded in setting systemDate.'); 278}); 279``` 280 281## systemTime.setDate 282 283setDate(date: Date): Promise<void> 284 285设置系统日期,使用Promise异步回调。 286 287**需要权限:** ohos.permission.SET_TIME 288 289**系统能力:** SystemCapability.MiscServices.Time 290 291**参数:** 292 293| 参数名 | 类型 | 必填 | 说明 | 294| -------- | -------- | -------- | -------- | 295| date | Date | 是 | 目标日期。 | 296 297**返回值:** 298 299| 类型 | 说明 | 300| -------- | -------- | 301| Promise<void> | 无返回结果的Promise对象。 | 302 303**示例:** 304 305```js 306let data = new Date("October 13, 2020 11:13:00"); 307systemTime.setDate(data).then(() => { 308 console.log('Succeeded in setting systemDate.'); 309}).catch((error) => { 310 console.error(`Failed to set systemDate. Cause: ` + JSON.stringify(error)); 311}); 312``` 313 314## systemTime.getDate<sup>8+</sup> 315 316getDate(callback: AsyncCallback<Date>): void 317 318获取当前系统日期,使用callback异步回调。 319 320**系统能力:** SystemCapability.MiscServices.Time 321 322**参数:** 323 324| 参数名 | 类型 | 必填 | 说明 | 325| -------- | -------- | -------- | -------- | 326| callback | AsyncCallback<Date> | 是 | 回调函数,返回当前系统日期。 | 327 328**示例:** 329 330```js 331systemTime.getDate((error, data) => { 332 if (error) { 333 console.error(`Failed to get systemDate. Cause: ` + JSON.stringify(error)); 334 return; 335 } 336 console.log(`Succeeded in getting systemDate. Data: ` + JSON.stringify(data)); 337}); 338``` 339 340## systemTime.getDate<sup>8+</sup> 341 342getDate(): Promise<Date> 343 344获取当前系统日期,使用Promise异步回调。 345 346**系统能力:** SystemCapability.MiscServices.Time 347 348**返回值:** 349 350| 类型 | 说明 | 351| -------- | -------- | 352| Promise<Date> | Promise对象,返回当前系统日期。 | 353 354**示例:** 355 356```js 357systemTime.getDate().then((data) => { 358 console.log(`Succeeded in getting systemDate. Data: ` + JSON.stringify(data)); 359}).catch((error) => { 360 console.error(`Failed to get systemDate. Cause: ` + JSON.stringify(error)); 361}); 362``` 363 364## systemTime.setTimezone 365 366setTimezone(timezone: string, callback: AsyncCallback<void>): void 367 368设置系统时区,使用callback异步回调。 369 370**需要权限:** ohos.permission.SET_TIME_ZONE 371 372**系统能力:** SystemCapability.MiscServices.Time 373 374**参数:** 375 376| 参数名 | 类型 | 必填 | 说明 | 377| -------- | -------- | -------- | -------- | 378| timezone | string | 是 | 系统时区。 | 379| callback | AsyncCallback<void> | 是 | 回调函数。 | 380 381**示例:** 382 383```js 384systemTime.setTimezone('Asia/Shanghai', (error) => { 385 if (error) { 386 console.error('Failed to set systemTimeZone. Cause: ' + JSON.stringify(error)); 387 return; 388 } 389 console.info('Succeeded in setting systemTimeZone.'); 390}); 391``` 392 393## systemTime.setTimezone 394 395setTimezone(timezone: string): Promise<void> 396 397设置系统时区,使用Promise异步回调。 398 399**需要权限:** ohos.permission.SET_TIME_ZONE 400 401**系统能力:** SystemCapability.MiscServices.Time 402 403**参数:** 404 405| 参数名 | 类型 | 必填 | 说明 | 406| -------- | -------- | -------- | -------- | 407| timezone | string | 是 | 系统时区。 | 408 409**返回值:** 410 411| 类型 | 说明 | 412| -------- | -------- | 413| Promise<void> | 无返回结果的Promise对象。 | 414 415**示例:** 416 417```js 418systemTime.setTimezone('Asia/Shanghai').then(() => { 419 console.log('Succeeded in setting systemTimeZone.'); 420}).catch((error) => { 421 console.error(`Failed to set systemTimeZone. Cause: ` + JSON.stringify(error)); 422}); 423``` 424 425## systemTime.getTimezone<sup>8+</sup> 426 427getTimezone(callback: AsyncCallback<string>): void 428 429获取系统时区,使用callback异步回调。 430 431**系统能力:** SystemCapability.MiscServices.Time 432 433**参数:** 434 435| 参数名 | 类型 | 必填 | 说明 | 436| -------- | -------- | -------- | -------- | 437| callback | AsyncCallback<string> | 是 | 回调函数,返回系统时区。 | 438 439**示例:** 440 441```js 442systemTime.getTimezone((error, data) => { 443 if (error) { 444 console.error(`Failed to get systemTimeZone. Cause: ` + JSON.stringify(error)); 445 return; 446 } 447 console.log(`Succeeded in getting systemTimeZone. Data: ` + JSON.stringify(data)); 448}); 449``` 450 451## systemTime.getTimezone<sup>8+</sup> 452 453getTimezone(): Promise<string> 454 455获取系统时区,使用Promise异步回调。 456 457**系统能力:** SystemCapability.MiscServices.Time 458 459**返回值:** 460 461| 类型 | 说明 | 462| -------- | -------- | 463| Promise<string> | Promise对象,返回系统时区。 | 464 465**示例:** 466 467```js 468systemTime.getTimezone().then((data) => { 469 console.log(`Succeeded in getting systemTimeZone. Data: ` + JSON.stringify(data)); 470}).catch((error) => { 471 console.error(`Failed to get systemTimeZone. Cause: ` + JSON.stringify(error)); 472}); 473```