1# 联系人 2 3>**说明:** 4> 5>本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 6 7 8## 导入模块 9 10``` 11import contact from '@ohos.contact'; 12``` 13 14## contact.addContact 15 16addContact(contact:Contact, callback:AsyncCallback<number>): void 17 18添加联系人,使用callback方式作为异步方法。 19 20**需要权限**:ohos.permission.WRITE_CONTACTS 21 22**系统能力**:SystemCapability.Applications.ContactsData 23 24**参数:** 25| 参数名 | 类型 | 必填 | 说明 | 26| -------- | --------------------------- | ---- | ------------------------------ | 27| contact | [Contact](#contact) | 是 | 联系人信息。 | 28| callback | AsyncCallback<number> | 是 | 回调函数,返回添加的联系人id。 | 29 30**示例:** 31 32 ``` 33 contact.addContact({ 34 fullName: {fullName: 'xxx'}, 35 phoneNumbers: [{phoneNumber: '138xxxxxxxx'}] 36 }, (err, data) => { 37 if (err) { 38 console.log(`addContact callback: err->${JSON.stringify(err)}`); 39 return; 40 } 41 console.log(`addContact callback: success data->${JSON.stringify(data)}`); 42 }); 43 ``` 44 45 46## contact.addContact 47 48addContact(contact: Contact): Promise<number> 49 50添加联系人,使用Promise方式作为异步方法。 51 52**需要权限**:ohos.permission.WRITE_CONTACTS 53 54**系统能力**:SystemCapability.Applications.ContactsData 55 56**参数:** 57| 参数名 | 类型 | 必填 | 说明 | 58| ------- | ------------------- | ---- | ------------ | 59| contact | [Contact](#contact) | 是 | 联系人信息。 | 60 61**返回值:** 62| 类型 | 说明 | 63| --------------------- | ------------------------------------------- | 64| Promise<number> | 以Promise形式返回结果,返回添加的联系人id。 | 65 66**示例:** 67 68 ``` 69 let promise = contact.addContact({ 70 name: {fullName: 'xxx'}, 71 phoneNumbers: [{phoneNumber: '138xxxxxxxx'}] 72 }); 73 promise.then((data) => { 74 console.log(`addContact success: data->${JSON.stringify(data)}`); 75 }).catch((err) => { 76 console.error(`addContact fail: err->${JSON.stringify(err)}`); 77 }); 78 ``` 79 80 81## contact.deleteContact 82 83deleteContact(key: string, callback: AsyncCallback<void>): void 84 85删除联系人,使用callback方式作为异步方法。 86 87**需要权限**:ohos.permission.WRITE_CONTACTS 88 89**系统能力**:SystemCapability.Applications.ContactsData 90 91**参数:** 92| 参数名 | 类型 | 必填 | 说明 | 93| -------- | ------------------------- | ---- | ------------------------------------ | 94| key | string | 是 | 联系人key值,一个联系人对应一个key。 | 95| callback | AsyncCallback<void> | 是 | 回调函数,返回删除联系人的结果。 | 96 97**示例:** 98 99 ``` 100 contact.deleteContact('xxx', (err) => { 101 if (err) { 102 console.log(`deleteContact callback: err->${JSON.stringify(err)}`); 103 return; 104 } 105 console.log('deleteContact success'); 106 }); 107 ``` 108 109 110## contact.deleteContact 111 112deleteContact(key: string): Promise<void> 113 114删除联系人,使用Promise方式作为异步方法。 115 116**需要权限**:ohos.permission.WRITE_CONTACTS 117 118**系统能力**:SystemCapability.Applications.ContactsData 119 120**参数:** 121| 参数名 | 类型 | 必填 | 说明 | 122| ------ | ------ | ---- | -------------------------------------- | 123| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 124 125**返回值:** 126| 类型 | 说明 | 127| ------------------- | --------------------------------------------- | 128| Promise<void> | 以Promise形式返回结果,返回删除联系人的结果。 | 129 130**示例:** 131 132 ``` 133 let promise = contact.deleteContact('xxx'); 134 promise.then(() => { 135 console.log(`deleteContact success`); 136 }).catch((err) => { 137 console.error(`deleteContact fail: err->${JSON.stringify(err)}`); 138 }); 139 ``` 140 141 142## contact.updateContact 143 144updateContact(contact: Contact, callback: AsyncCallback<void>): void 145 146更新联系人,使用callback方式作为异步方法。 147 148**需要权限**:ohos.permission.WRITE_CONTACTS 149 150**系统能力**:SystemCapability.Applications.ContactsData 151 152**参数:** 153| 参数名 | 类型 | 必填 | 说明 | 154| -------- | ------------------------- | ---- | ------------------------------------ | 155| contact | [Contact](#contact) | 是 | 联系人信息。 | 156| callback | AsyncCallback<void> | 是 | 回调函数,返回更新联系人的更新结果。 | 157 158**示例:** 159 160 ``` 161 contact.updateContact({ 162 name: {fullName: 'xxx'}, 163 phoneNumbers: [{phoneNumber: '138xxxxxxxx'}] 164 }, (err) => { 165 if (err) { 166 console.log('updateContact callback: err->${JSON.stringify(err)}'); 167 return; 168 } 169 console.log('updateContact success'); 170 }); 171 ``` 172 173 174## contact.updateContact 175 176updateContact(contact: Contact, attrs: ContactAttributes, callback: AsyncCallback<void>): void 177 178更新联系人,使用callback方式作为异步方法。 179 180**需要权限**:ohos.permission.WRITE_CONTACTS 181 182**系统能力**:SystemCapability.Applications.ContactsData 183 184**参数:** 185| 参数名 | 类型 | 必填 | 说明 | 186| -------- | --------------------------------------- | ---- | ------------------------------------ | 187| contact | [Contact](#contact) | 是 | 联系人信息。 | 188| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 189| callback | AsyncCallback<void> | 是 | 回调函数,返回更新联系人的更新结果。 | 190 191**示例:** 192 193 ``` 194 contact.updateContact({ 195 fullName: {fullName: 'xxx'}, 196 phoneNumbers: [{phoneNumber: '138xxxxxxxx'}] 197 },{ 198 attributes:['ATTR_EMAIL', 'ATTR_NAME'] 199 }, (err) => { 200 if (err) { 201 console.log('updateContact callback: err->${JSON.stringify(err)}'); 202 return; 203 } 204 console.log('updateContact success'); 205 }); 206 ``` 207 208 209## contact.updateContact 210 211updateContact(contact: Contact, attrs?: ContactAttributes): Promise<void> 212 213更新联系人,使用Promise方式作为异步方法。 214 215**需要权限**:ohos.permission.WRITE_CONTACTS 216 217**系统能力**:SystemCapability.Applications.ContactsData 218 219**参数:** 220| 参数名 | 类型 | 必填 | 说明 | 221| ------- | --------------------------------------- | ---- | ------------------ | 222| contact | [Contact](#contact) | 是 | 联系人信息。 | 223| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 224 225**返回值:** 226| 类型 | 说明 | 227| ------------------- | ------------------------------------------------- | 228| Promise<void> | 以Promise形式返回结果,返回更新联系人的更新结果。 | 229 230**示例:** 231 232 ``` 233 let promise = contact.updateContact({ 234 fullName: {fullName: 'xxx'}, 235 phoneNumbers: [{phoneNumber: '138xxxxxxxx'}] 236 }, { 237 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 238 }); 239 promise.then(() => { 240 console.log('updateContact success'); 241 }).catch((err) => { 242 console.error(`updateContact fail: err->${JSON.stringify(err)}`); 243 }); 244 ``` 245 246 247## contact.isLocalContact 248 249isLocalContact(id: number, callback: AsyncCallback<boolean>): void 250 251判断当前联系人id是否在电话簿中,使用callback方式作为异步方法。 252 253**需要权限**:ohos.permission.READ_CONTACTS 254 255**系统能力**:SystemCapability.Applications.ContactsData 256 257**参数:** 258| 参数名 | 类型 | 必填 | 说明 | 259| -------- | ---------------------------- | ---- | ------------------------------------------------------------ | 260| id | number | 是 | 联系人对象的id属性,一个联系人对应一个id。 | 261| callback | AsyncCallback<boolean> | 是 | 回调函数,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。 | 262 263**示例:** 264 265 ``` 266 contact.isLocalContact(/*id*/1, (err, data) => { 267 if (err) { 268 console.log(`isLocalContact callback: err->${JSON.stringify(err)}`); 269 return; 270 } 271 console.log(`isLocalContact callback: success data->${JSON.stringify(data)}`); 272 }); 273 ``` 274 275 276## contact.isLocalContact 277 278isLocalContact(id: number): Promise<boolean> 279 280判断当前联系人id是否在电话簿中,使用Promise方式作为异步方法。 281 282**需要权限**:ohos.permission.READ_CONTACTS 283 284**系统能力**:SystemCapability.Applications.ContactsData 285 286**参数:** 287| 参数名 | 类型 | 必填 | 说明 | 288| ------ | ------ | ---- | ------------------------------------------ | 289| id | number | 是 | 联系人对象的id属性,一个联系人对应一个id。 | 290 291**返回值:** 292| 类型 | 说明 | 293| ---------------------- | ------------------------------------------------------------ | 294| Promise<boolean> | 以Promise形式返回结果,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。 | 295 296**示例:** 297 298 ``` 299 let promise = contact.isLocalContact(/*id*/1); 300 promise.then((data) => { 301 console.log(`isLocalContact success: data->${JSON.stringify(data)}`); 302 }).catch((err) => { 303 console.error(`isLocalContact fail: err->${JSON.stringify(err)}`); 304 }); 305 ``` 306 307 308## contact.isMyCard 309 310isMyCard(id: number, callback: AsyncCallback<boolean>): void 311 312判断是否为“我的名片”,使用callback方式作为异步方法。 313 314**需要权限**:ohos.permission.READ_CONTACTS 315 316**系统能力**:SystemCapability.Applications.ContactsData 317 318**参数:** 319| 参数名 | 类型 | 必填 | 说明 | 320| -------- | ---------------------------- | ---- | ------------------------------------------------------------ | 321| id | number | 是 | 联系人对象的id属性。 | 322| callback | AsyncCallback<boolean> | 是 | 回调函数,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。 | 323 324**示例:** 325 326 ``` 327 contact.isMyCard(/*id*/1, (err, data) => { 328 if (err) { 329 console.log(`isMyCard callback: err->${JSON.stringify(err)}`); 330 return; 331 } 332 console.log(`isMyCard callback: success data->${JSON.stringify(data)}`); 333 }); 334 ``` 335 336 337## contact.isMyCard 338 339isMyCard(id: number): Promise<boolean> 340 341判断是否为“我的名片”,使用Promise方式作为异步方法。 342 343**需要权限**:ohos.permission.READ_CONTACTS 344 345**系统能力**:SystemCapability.Applications.ContactsData 346 347**参数:** 348| 参数名 | 类型 | 必填 | 说明 | 349| ------ | ------ | ---- | -------------------- | 350| id | number | 是 | 联系人对象的id属性。 | 351 352**返回值:** 353| 类型 | 说明 | 354| ---------------------- | ------------------------------------------------------------ | 355| Promise<boolean> | 以Promise形式返回结果,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。 | 356 357**示例:** 358 359 ``` 360 let promise = contact.isMyCard(/*id*/1); 361 promise.then((data) => { 362 console.log(`isMyCard success: data->${JSON.stringify(data)}`); 363 }).catch((err) => { 364 console.error(`isMyCard fail: err->${JSON.stringify(err)}`); 365 }); 366 ``` 367 368 369## contact.queryMyCard 370 371queryMyCard(callback: AsyncCallback<Contact>): void 372 373查询“我的名片”,使用callback方式作为异步方法。 374 375**需要权限**:ohos.permission.READ_CONTACTS 376 377**系统能力**:SystemCapability.Applications.ContactsData 378 379**参数:** 380| 参数名 | 类型 | 必填 | 说明 | 381| -------- | ---------------------------------------- | ---- | ------------------------------ | 382| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回“我的名片”信息。 | 383 384**示例:** 385 386 ``` 387 contact.queryMyCard((err, data) => { 388 if (err) { 389 console.log(`queryMyCard callback: err->${JSON.stringify(err)}`); 390 return; 391 } 392 console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`); 393 }); 394 ``` 395 396 397## contact.queryMyCard 398 399queryMyCard(attrs: ContactAttributes, callback: AsyncCallback<Contact>): void 400 401查询“我的名片”,使用callback方式作为异步方法。 402 403**需要权限**:ohos.permission.READ_CONTACTS 404 405**系统能力**:SystemCapability.Applications.ContactsData 406 407**参数:** 408| 参数名 | 类型 | 必填 | 说明 | 409| -------- | ---------------------------------------- | ---- | ------------------------------ | 410| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 411| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回“我的名片”信息。 | 412 413**示例:** 414 415 ``` 416 contact.queryMyCard({ 417 attributes:['ATTR_EMAIL', 'ATTR_NAME'] 418 }, (err, data) => { 419 if (err) { 420 console.log(`queryMyCard callback: err->${JSON.stringify(err)}`); 421 return; 422 } 423 console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`); 424 }); 425 ``` 426 427 428## contact.queryMyCard 429 430queryMyCard(attrs?: ContactAttributes): Promise<Contact> 431 432查询“我的名片”,使用Promise方式作为异步方法。 433 434**需要权限**:ohos.permission.READ_CONTACTS 435 436**系统能力**:SystemCapability.Applications.ContactsData 437 438**参数:** 439| 参数名 | 类型 | 必填 | 说明 | 440| ------ | --------------------------------------- | ---- | ------------------ | 441| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 442 443**返回值:** 444| 类型 | 说明 | 445| ---------------------------------- | ------------------------------------------- | 446| Promise<[Contact](#contact)> | 以Promise形式返回结果,返回“我的名片”信息。 | 447 448**示例:** 449 450 ``` 451 let promise = contact.queryMyCard({ 452 attributes:['ATTR_EMAIL', 'ATTR_NAME'] 453 }); 454 promise.then((data) => { 455 console.log(`queryMyCard success: data->${JSON.stringify(data)}`); 456 }).catch((err) => { 457 console.error(`queryMyCard fail: err->${JSON.stringify(err)}`); 458 }); 459 ``` 460 461 462## contact.selectContact 463 464selectContact(callback: AsyncCallback<Array<Contact>>): void 465 466选择联系人,使用callback方式作为异步方法。 467 468**需要权限**:ohos.permission.READ_CONTACTS 469 470**系统能力**:SystemCapability.Applications.Contacts、SystemCapability.Applications.ContactsData 471 472**参数:** 473| 参数名 | 类型 | 必填 | 说明 | 474| -------- | ----------------------------------------------------- | ---- | ------------------------------------ | 475| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回选择的联系人对象数组。 | 476 477**示例:** 478 479 ``` 480 contact.selectContact((err, data) => { 481 if (err) { 482 console.log(`selectContact callback: err->${JSON.stringify(err)}`); 483 return; 484 } 485 console.log(`selectContact callback: success data->${JSON.stringify(data)}`); 486 }); 487 ``` 488 489 490## contact.selectContact 491 492selectContact(): Promise<Array<Contact>> 493 494选择联系人,使用Promise方式作为异步方法。 495 496**需要权限**:ohos.permission.READ_CONTACTS 497 498**系统能力**:SystemCapability.Applications.Contacts、SystemCapability.Applications.ContactsData 499 500**返回值:** 501| 类型 | 说明 | 502| ----------------------------------------------- | ------------------------------------------------- | 503| Promise<Array<[Contact](#contact)>> | 以Promise形式返回结果,返回选择的联系人对象数组。 | 504 505**示例:** 506 507 ``` 508 let promise = contact.selectContact(); 509 promise.then((data) => { 510 console.log(`selectContact success: data->${JSON.stringify(data)}`); 511 }).catch((err) => { 512 console.error(`selectContact fail: err->${JSON.stringify(err)}`); 513 }); 514 ``` 515 516 517## contact.queryContact 518 519queryContact(key: string, callback: AsyncCallback<Contact>): void 520 521根据key查询联系人,使用callback方式作为异步方法。 522 523**需要权限**:ohos.permission.READ_CONTACTS 524 525**系统能力**:SystemCapability.Applications.ContactsData 526 527**参数:** 528| 参数名 | 类型 | 必填 | 说明 | 529| -------- | ---------------------------------------- | ---- | -------------------------------------- | 530| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 531| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回查询的联系人对象。 | 532 533**示例:** 534 535 ``` 536 contact.queryContact('xxx', (err, data) => { 537 if (err) { 538 console.log(`queryContact callback: err->${JSON.stringify(err)}`); 539 return; 540 } 541 console.log(`queryContact callback: success data->${JSON.stringify(data)}`); 542 }); 543 ``` 544 545 546## contact.queryContact 547 548queryContact(key: string, holder: Holder, callback: AsyncCallback<Contact>): void 549 550根据key查询联系人,使用callback方式作为异步方法。 551 552**需要权限**:ohos.permission.READ_CONTACTS 553 554**系统能力**:SystemCapability.Applications.ContactsData 555 556**参数:** 557| 参数名 | 类型 | 必填 | 说明 | 558| -------- | ---------------------------------------- | ---- | -------------------------------------- | 559| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 560| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 561| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回查询的联系人对象。 | 562 563**示例:** 564 565 ``` 566 contact.queryContact('xxx', { 567 holderId: 0 568 }, (err, data) => { 569 if (err) { 570 console.log(`queryContact callback: err->${JSON.stringify(err)}`); 571 return; 572 } 573 console.log(`queryContact callback: success data->${JSON.stringify(data)}`); 574 }); 575 ``` 576 577 578## contact.queryContact 579 580queryContact(key: string, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void 581 582根据key查询联系人,使用callback方式作为异步方法。 583 584**需要权限**:ohos.permission.READ_CONTACTS 585 586**系统能力**:SystemCapability.Applications.ContactsData 587 588**参数:** 589| 参数名 | 类型 | 必填 | 说明 | 590| -------- | ---------------------------------------- | ---- | -------------------------------------- | 591| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 592| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 593| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回查询的联系人对象。 | 594 595**示例:** 596 597 ``` 598 contact.queryContact('xxx', { 599 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 600 }, (err, data) => { 601 if (err) { 602 console.log(`queryContact callback: err->${JSON.stringify(err)}`); 603 return; 604 } 605 console.log(`queryContact callback: success data->${JSON.stringify(data)}`); 606 }); 607 ``` 608 609 610## contact.queryContact 611 612queryContact(key: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void 613 614根据key查询联系人,使用callback方式作为异步方法。 615 616**需要权限**:ohos.permission.READ_CONTACTS 617 618**系统能力**:SystemCapability.Applications.ContactsData 619 620**参数:** 621| 参数名 | 类型 | 必填 | 说明 | 622| -------- | ---------------------------------------- | ---- | -------------------------------------- | 623| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 624| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 625| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 626| callback | AsyncCallback<[Contact](#contact)> | 是 | 回调函数,返回查询的联系人对象。 | 627 628**示例:** 629 630 ``` 631 contact.queryContact('xxx', { 632 holderId: 0 633 }, { 634 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 635 }, (err, data) => { 636 if (err) { 637 console.log(`queryContact callback: err->${JSON.stringify(err)}`); 638 return; 639 } 640 console.log(`queryContact callback: success data->${JSON.stringify(data)}`); 641 }); 642 ``` 643 644 645## contact.queryContact 646 647queryContact(key: string, holder?: Holder, attrs?: ContactAttributes): Promise<Contact> 648 649根据key查询联系人,使用Promise方式作为异步方法。 650 651**需要权限**:ohos.permission.READ_CONTACTS 652 653**系统能力**:SystemCapability.Applications.ContactsData 654 655**参数:** 656| 参数名 | 类型 | 必填 | 说明 | 657| ------ | --------------------------------------- | ---- | -------------------------------------- | 658| key | string | 是 | 联系人的key值,一个联系人对应一个key。 | 659| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 660| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 661 662**返回值:** 663| 类型 | 说明 | 664| ---------------------------------- | ----------------------------------------------- | 665| Promise<[Contact](#contact)> | 以Promise形式返回结果,返回查询到的联系人对象。 | 666 667**示例:** 668 669 ``` 670 let promise = contact.queryContact('xxx', { 671 holderId: 0 672 }, { 673 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 674 }); 675 promise.then((data) => { 676 console.log(`queryContact success: data->${JSON.stringify(data)}`); 677 }).catch((err) => { 678 console.error(`queryContact fail: err->${JSON.stringify(err)}`); 679 }); 680 ``` 681 682 683## contact.queryContacts 684 685queryContacts(callback: AsyncCallback<Array<Contact>>): void 686 687查询所有联系人,使用callback方式作为异步方法。 688 689**需要权限**:ohos.permission.READ_CONTACTS 690 691**系统能力**:SystemCapability.Applications.ContactsData 692 693**参数:** 694| 参数名 | 类型 | 必填 | 说明 | 695| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 696| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 697 698**示例:** 699 700 ``` 701 contact.queryContacts((err, data) => { 702 if (err) { 703 console.log(`queryContacts callback: err->${JSON.stringify(err)}`); 704 return; 705 } 706 console.log(`queryContacts callback: success data->${JSON.stringify(data)}`); 707 }); 708 ``` 709 710 711## contact.queryContacts 712 713queryContacts(holder: Holder, callback: AsyncCallback<Array<Contact>>): void 714 715查询所有联系人,使用callback方式作为异步方法。 716 717**需要权限**:ohos.permission.READ_CONTACTS 718 719**系统能力**:SystemCapability.Applications.ContactsData 720 721**参数:** 722| 参数名 | 类型 | 必填 | 说明 | 723| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 724| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 725| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 726 727**示例:** 728 729 ``` 730 contact.queryContacts({ 731 holderId: 0 732 }, (err, data) => { 733 if (err) { 734 console.log(`queryContacts callback: err->${JSON.stringify(err)}`); 735 return; 736 } 737 console.log(`queryContacts callback: success data->${JSON.stringify(data)}`); 738 }); 739 ``` 740 741 742## contact.queryContacts 743 744queryContacts(attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 745 746查询所有联系人,使用callback方式作为异步方法。 747 748**需要权限**:ohos.permission.READ_CONTACTS 749 750**系统能力**:SystemCapability.Applications.ContactsData 751 752**参数:** 753| 参数名 | 类型 | 必填 | 说明 | 754| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 755| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 756| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 757 758**示例:** 759 760 ``` 761 contact.queryContacts({ 762 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 763 }, (err, data) => { 764 if (err) { 765 console.log(`queryContacts callback: err->${JSON.stringify(err)}`); 766 return; 767 } 768 console.log(`queryContacts callback: success data->${JSON.stringify(data)}`); 769 }); 770 ``` 771 772 773## contact.queryContacts 774 775queryContacts(holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 776 777查询所有联系人,使用callback方式作为异步方法。 778 779**需要权限**:ohos.permission.READ_CONTACTS 780 781**系统能力**:SystemCapability.Applications.ContactsData 782 783**参数:** 784| 参数名 | 类型 | 必填 | 说明 | 785| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 786| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 787| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 788| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 789 790**示例:** 791 792 ``` 793 contact.queryContacts({ 794 holderId: 0 795 }, { 796 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 797 }, (err, data) => { 798 if (err) { 799 console.log(`queryContacts callback: err->${JSON.stringify(err)}`); 800 return; 801 } 802 console.log(`queryContacts callback: success data->${JSON.stringify(data)}`); 803 }); 804 ``` 805 806 807## contact.queryContacts 808 809queryContacts(holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>> 810 811查询所有联系人,使用Promise方式作为异步方法。 812 813**需要权限**:ohos.permission.READ_CONTACTS 814 815**系统能力**:SystemCapability.Applications.ContactsData 816 817**参数:** 818| 参数名 | 类型 | 必填 | 说明 | 819| ------ | --------------------------------------- | ---- | ---------------------- | 820| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 821| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 822 823**返回值:** 824| 类型 | 说明 | 825| ----------------------------------------------- | --------------------------------------------------- | 826| Promise<Array<[Contact](#contact)>> | 以Promise形式返回结果,返回查询到的联系人对象数组。 | 827 828**示例:** 829 830 ``` 831 let promise = contact.queryContacts({ 832 holderId: 0 833 }, { 834 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 835 }); 836 promise.then((data) => { 837 console.log(`queryContacts success: data->${JSON.stringify(data)}`); 838 }).catch((err) => { 839 console.error(`queryContacts fail: err->${JSON.stringify(err)}`); 840 }); 841 ``` 842 843 844## contact.queryContactsByPhoneNumber 845 846queryContactsByPhoneNumber(phoneNumber: string, callback: AsyncCallback<Array<Contact>>): void 847 848根据电话号码查询联系人,使用callback方式作为异步方法。 849 850**需要权限**:ohos.permission.READ_CONTACTS 851 852**系统能力**:SystemCapability.Applications.ContactsData 853 854**参数:** 855| 参数名 | 类型 | 必填 | 说明 | 856| ----------- | ----------------------------------------------------- | ---- | -------------------------------------- | 857| phoneNumber | string | 是 | 联系人的电话号码。 | 858| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 859 860**示例:** 861 862 ``` 863 contact.queryContactsByPhoneNumber('138xxxxxxxx', (err, data) => { 864 if (err) { 865 console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`); 866 return; 867 } 868 console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`); 869 }); 870 ``` 871 872 873## contact.queryContactsByPhoneNumber 874 875queryContactsByPhoneNumber(phoneNumber: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void 876 877根据电话号码查询联系人,使用callback方式作为异步方法。 878 879**需要权限**:ohos.permission.READ_CONTACTS 880 881**系统能力**:SystemCapability.Applications.ContactsData 882 883**参数:** 884| 参数名 | 类型 | 必填 | 说明 | 885| ----------- | ----------------------------------------------------- | ---- | -------------------------------------- | 886| phoneNumber | string | 是 | 联系人的电话号码。 | 887| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 888| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 889 890**示例:** 891 892 ``` 893 contact.queryContactsByPhoneNumber('138xxxxxxxx', { 894 holderId: 0 895 }, (err, data) => { 896 if (err) { 897 console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`); 898 return; 899 } 900 console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`); 901 }); 902 ``` 903 904 905## contact.queryContactsByPhoneNumber 906 907queryContactsByPhoneNumber(phoneNumber: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 908 909根据电话号码查询联系人,使用callback方式作为异步方法。 910 911**需要权限**:ohos.permission.READ_CONTACTS 912 913**系统能力**:SystemCapability.Applications.ContactsData 914 915**参数:** 916| 参数名 | 类型 | 必填 | 说明 | 917| ----------- | ----------------------------------------------------- | ---- | -------------------------------------- | 918| phoneNumber | string | 是 | 联系人的电话号码。 | 919| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 920| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 921 922**示例:** 923 924 ``` 925 contact.queryContactsByPhoneNumber('138xxxxxxxx', { 926 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 927 }, (err, data) => { 928 if (err) { 929 console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`); 930 return; 931 } 932 console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`); 933 }); 934 ``` 935 936 937## contact.queryContactsByPhoneNumber 938 939queryContactsByPhoneNumber(phoneNumber: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 940 941根据电话号码查询联系人,使用callback方式作为异步方法。 942 943**需要权限**:ohos.permission.READ_CONTACTS 944 945**系统能力**:SystemCapability.Applications.ContactsData 946 947**参数:** 948| 参数名 | 类型 | 必填 | 说明 | 949| ----------- | ----------------------------------------------------- | ---- | -------------------------------------- | 950| phoneNumber | string | 是 | 联系人的电话号码。 | 951| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 952| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 953| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 954 955**示例:** 956 957 ``` 958 contact.queryContactsByPhoneNumber('138xxxxxxxx', { 959 holderId: 0 960 }, { 961 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 962 }, (err, data) => { 963 if (err) { 964 console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`); 965 return; 966 } 967 console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`); 968 }); 969 ``` 970 971 972## contact.queryContactsByPhoneNumber 973 974queryContactsByPhoneNumber(phoneNumber: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>> 975 976根据电话号码查询联系人,使用Promise方式作为异步方法。 977 978**需要权限**:ohos.permission.READ_CONTACTS 979 980**系统能力**:SystemCapability.Applications.ContactsData 981 982**参数:** 983| 参数名 | 类型 | 必填 | 说明 | 984| ----------- | --------------------------------------- | ---- | ---------------------- | 985| phoneNumber | string | 是 | 联系人的电话号码。 | 986| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 987| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 988 989**返回值:** 990| 类型 | 说明 | 991| ----------------------------------------------- | --------------------------------------------------- | 992| Promise<Array<[Contact](#contact)>> | 以Promise形式返回结果,返回查询到的联系人对象数组。 | 993 994**示例:** 995 996 ``` 997 let promise = contact.queryContactsByPhoneNumber('138xxxxxxxx', { 998 holderId: 0 999 }, { 1000 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 1001 }); 1002 promise.then((data) => { 1003 console.log(`queryContactsByPhoneNumber success: data->${JSON.stringify(data)}`); 1004 }).catch((err) => { 1005 console.error(`queryContactsByPhoneNumber fail: err->${JSON.stringify(err)}`); 1006 }); 1007 ``` 1008 1009 1010## contact.queryContactsByEmail 1011 1012queryContactsByEmail(email: string, callback: AsyncCallback<Array<Contact>>): void 1013 1014根据email查询联系人,使用callback方式作为异步方法。 1015 1016**需要权限**:ohos.permission.READ_CONTACTS 1017 1018**系统能力**:SystemCapability.Applications.ContactsData 1019 1020**参数:** 1021| 参数名 | 类型 | 必填 | 说明 | 1022| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 1023| email | string | 是 | 联系人的邮箱地址。 | 1024| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 1025 1026**示例:** 1027 1028 ``` 1029 contact.queryContactsByEmail('xxx@email.com', (err, data) => { 1030 if (err) { 1031 console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`); 1032 return; 1033 } 1034 console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`); 1035 }); 1036 ``` 1037 1038 1039## contact.queryContactsByEmail 1040 1041queryContactsByEmail(email: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void 1042 1043根据email查询联系人,使用callback方式作为异步方法。 1044 1045**需要权限**:ohos.permission.READ_CONTACTS 1046 1047**系统能力**:SystemCapability.Applications.ContactsData 1048 1049**参数:** 1050| 参数名 | 类型 | 必填 | 说明 | 1051| -------- | ----------------------------------------------------- | ---- | -------------------------------------- | 1052| email | string | 是 | 联系人的邮箱地址。 | 1053| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 1054| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到的联系人对象数组。 | 1055 1056**示例:** 1057 1058 ``` 1059 contact.queryContactsByEmail('xxx@email.com', { 1060 holderId: 0 1061 }, (err, data) => { 1062 if (err) { 1063 console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`); 1064 return; 1065 } 1066 console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`); 1067 }); 1068 ``` 1069 1070 1071## contact.queryContactsByEmail 1072 1073queryContactsByEmail(email: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 1074 1075根据email查询联系人,使用callback方式作为异步方法。 1076 1077**需要权限**:ohos.permission.READ_CONTACTS 1078 1079**系统能力**:SystemCapability.Applications.ContactsData 1080 1081**参数:** 1082| 参数名 | 类型 | 必填 | 说明 | 1083| -------- | ----------------------------------------------------- | ---- | ------------------------------------ | 1084| email | string | 是 | 联系人的邮箱地址。 | 1085| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 1086| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到联系人对象数组。 | 1087 1088**示例:** 1089 1090 ``` 1091 contact.queryContactsByEmail('xxx@email.com', { 1092 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 1093 }, (err, data) => { 1094 if (err) { 1095 console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`); 1096 return; 1097 } 1098 console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`); 1099 }); 1100 ``` 1101 1102 1103## contact.queryContactsByEmail 1104 1105queryContactsByEmail(email: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void 1106 1107根据email查询联系人,使用callback方式作为异步方法。 1108 1109**需要权限**:ohos.permission.READ_CONTACTS 1110 1111**系统能力**:SystemCapability.Applications.ContactsData 1112 1113**参数:** 1114| 参数名 | 类型 | 必填 | 说明 | 1115| -------- | ----------------------------------------------------- | ---- | ------------------------------------ | 1116| email | string | 是 | 联系人的邮箱地址。 | 1117| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 1118| attrs | [ContactAttributes](#contactattributes) | 是 | 联系人的属性列表。 | 1119| callback | AsyncCallback<Array<[Contact](#contact)>> | 是 | 回调函数,返回查询到联系人对象数组。 | 1120 1121**示例:** 1122 1123 ``` 1124 contact.queryContactsByEmail('xxx@email.com', { 1125 holderId: 0 1126 }, { 1127 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 1128 }, (err, data) => { 1129 if (err) { 1130 console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`); 1131 return; 1132 } 1133 console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`); 1134 }); 1135 ``` 1136 1137 1138## contact.queryContactsByEmail 1139 1140queryContactsByEmail(email: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>> 1141 1142根据email查询联系人,使用Promise方式作为异步方法。 1143 1144**需要权限**:ohos.permission.READ_CONTACTS 1145 1146**系统能力**:SystemCapability.Applications.ContactsData 1147 1148**参数:** 1149| 参数名 | 类型 | 必填 | 说明 | 1150| ------ | --------------------------------------- | ---- | ---------------------- | 1151| email | string | 是 | 联系人的邮箱地址。 | 1152| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 1153| attrs | [ContactAttributes](#contactattributes) | 否 | 联系人的属性列表。 | 1154 1155**返回值:** 1156| 类型 | 说明 | 1157| ----------------------------------------------- | --------------------------------------------------- | 1158| Promise<Array<[Contact](#contact)>> | 以Promise形式返回结果,返回查询到的联系人对象数组。 | 1159 1160**示例:** 1161 1162 ``` 1163 let promise = contact.queryContactsByEmail('xxx@email.com', { 1164 holderId: 0 1165 }, { 1166 attributes: ["ATTR_EMAIL", "ATTR_NAME"] 1167 }); 1168 promise.then((data) => { 1169 console.log(`queryContactsByEmail success: data->${JSON.stringify(data)}`); 1170 }).catch((err) => { 1171 console.error(`queryContactsByEmail fail: err->${JSON.stringify(err)}`); 1172 }); 1173 ``` 1174 1175 1176## contact.queryGroups 1177 1178queryGroups(callback: AsyncCallback<Array<Group>>): void 1179 1180查询联系人的所有群组,使用callback方式作为异步方法。 1181 1182**需要权限**:ohos.permission.READ_CONTACTS 1183 1184**系统能力**:SystemCapability.Applications.ContactsData 1185 1186**参数:** 1187| 参数名 | 类型 | 必填 | 说明 | 1188| -------- | ------------------------------------------------- | ---- | ------------------------------------ | 1189| callback | AsyncCallback<Array<[Group](#group)>> | 是 | 回调函数,返回查询到的群组对象数组。 | 1190 1191**示例:** 1192 1193 ``` 1194 contact.queryGroups((err, data) => { 1195 if (err) { 1196 console.log(`queryGroups callback: err->${JSON.stringify(err)}`); 1197 return; 1198 } 1199 console.log(`queryGroups callback: success data->${JSON.stringify(data)}`); 1200 }); 1201 ``` 1202 1203 1204## contact.queryGroups 1205 1206queryGroups(holder: Holder, callback: AsyncCallback<Array<Group>>): void 1207 1208查询联系人的所有群组,使用callback方式作为异步方法。 1209 1210**需要权限**:ohos.permission.READ_CONTACTS 1211 1212**系统能力**:SystemCapability.Applications.ContactsData 1213 1214**参数:** 1215| 参数名 | 类型 | 必填 | 说明 | 1216| -------- | ------------------------------------------------- | ---- | ------------------------------------ | 1217| holder | Holder | 是 | 创建联系人的应用信息。 | 1218| callback | AsyncCallback<Array<[Group](#group)>> | 是 | 回调函数,返回查询到的群组对象数组。 | 1219 1220**示例:** 1221 1222 ``` 1223 contact.queryGroups({ 1224 holderId: 0 1225 }, (err, data) => { 1226 if (err) { 1227 console.log(`queryGroups callback: err->${JSON.stringify(err)}`); 1228 return; 1229 } 1230 console.log(`queryGroups callback: success data->${JSON.stringify(data)}`); 1231 }); 1232 ``` 1233 1234 1235## contact.queryGroups 1236 1237queryGroups(holder?: Holder): Promise<Array<Group>> 1238 1239查询联系人的所有群组,使用Promise方式作为异步方法。 1240 1241**需要权限**:ohos.permission.READ_CONTACTS 1242 1243**系统能力**:SystemCapability.Applications.ContactsData 1244 1245**参数:** 1246| 参数名 | 类型 | 必填 | 说明 | 1247| ------ | ----------------- | ---- | ---------------------- | 1248| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 1249 1250**返回值:** 1251| 类型 | 说明 | 1252| ------------------------------------------- | ------------------------------------------------- | 1253| Promise<Array<[Group](#group)>> | 以Promise形式返回结果,返回查询到的群组对象数组。 | 1254 1255**示例:** 1256 1257 ``` 1258 let promise = contact.queryGroups({ 1259 holderId: 0 1260 }); 1261 promise.then((data) => { 1262 console.log(`queryGroups success: data->${JSON.stringify(data)}`); 1263 }).catch((err) => { 1264 console.error(`queryGroups fail: err->${JSON.stringify(err)}`); 1265 }); 1266 ``` 1267 1268 1269## contact.queryHolders 1270 1271queryHolders(callback: AsyncCallback<Array<Holder>>): void 1272 1273查询所有创建联系人的应用信息,使用callback方式作为异步方法。 1274 1275**需要权限**:ohos.permission.READ_CONTACTS 1276 1277**系统能力**:SystemCapability.Applications.ContactsData 1278 1279**参数:** 1280| 参数名 | 类型 | 必填 | 说明 | 1281| -------- | --------------------------------------------------- | ---- | ---------------------------------------------------- | 1282| callback | AsyncCallback<Array<[Holder](#holder)>> | 是 | 回调函数,返回查询到的创建联系人应用信息的对象数组。 | 1283 1284**示例:** 1285 1286 ``` 1287 contact.queryHolders((err, data) => { 1288 if (err) { 1289 console.log(`queryHolders callback: err->${JSON.stringify(err)}`); 1290 return; 1291 } 1292 console.log(`queryHolders callback: success data->${JSON.stringify(data)}`); 1293 }); 1294 ``` 1295 1296 1297## contact.queryHolders 1298 1299queryHolders(): Promise<Array<Holder>> 1300 1301查询所有创建联系人的应用信息,使用Promise方式作为异步方法。 1302 1303**需要权限**:ohos.permission.READ_CONTACTS 1304 1305**系统能力**:SystemCapability.Applications.ContactsData 1306 1307**返回值:** 1308| 类型 | 说明 | 1309| --------------------------------------------- | ------------------------------------------------------------ | 1310| Promise<Array<[Holder](#holder)>> | 以Promise形式返回结果,返回查询到的创建联系人应用信息的对象数组。 | 1311 1312**示例:** 1313 1314 ``` 1315 let promise = contact.queryHolders(); 1316 promise.then((data) => { 1317 console.log(`queryHolders success: data->${JSON.stringify(data)}`); 1318 }).catch((err) => { 1319 console.error(`queryHolders fail: err->${JSON.stringify(err)}`); 1320 }); 1321 ``` 1322 1323 1324## contact.queryKey 1325 1326queryKey(id: number, callback: AsyncCallback<string>): void 1327 1328根据联系人的id查询联系人的key,使用callback方式作为异步方法。 1329 1330**需要权限**:ohos.permission.READ_CONTACTS 1331 1332**系统能力**:SystemCapability.Applications.ContactsData 1333 1334**参数:** 1335| 参数名 | 类型 | 必填 | 说明 | 1336| -------- | --------------------------- | ---- | --------------------------------------- | 1337| id | number | 是 | 联系人对象的id属性。 | 1338| callback | AsyncCallback<string> | 是 | 回调函数,返回查询到的联系人对应的key。 | 1339 1340**示例:** 1341 1342 ``` 1343 contact.queryKey(/*id*/1, (err, data) => { 1344 if (err) { 1345 console.log(`queryKey callback: err->${JSON.stringify(err)}`); 1346 return; 1347 } 1348 console.log(`queryKey callback: success data->${JSON.stringify(data)}`); 1349 }); 1350 ``` 1351 1352 1353## contact.queryKey 1354 1355queryKey(id: number, holder: Holder, callback: AsyncCallback<string>): void 1356 1357根据联系人的id查询联系人的key,使用callback方式作为异步方法。 1358 1359**需要权限**:ohos.permission.READ_CONTACTS 1360 1361**系统能力**:SystemCapability.Applications.ContactsData 1362 1363**参数:** 1364| 参数名 | 类型 | 必填 | 说明 | 1365| -------- | --------------------------- | ---- | --------------------------------------- | 1366| id | number | 是 | 联系人对象的id属性。 | 1367| holder | [Holder](#holder) | 是 | 创建联系人的应用信息。 | 1368| callback | AsyncCallback<string> | 是 | 回调函数,返回查询到的联系人对应的key。 | 1369 1370**示例:** 1371 1372 ``` 1373 contact.queryKey(id, { 1374 holderId:1 1375 }, (err, data) => { 1376 if (err) { 1377 console.log(`queryKey callback: err->${JSON.stringify(err)}`); 1378 return; 1379 } 1380 console.log(`queryKey callback: success data->${JSON.stringify(data)}`); 1381 }); 1382 ``` 1383 1384 1385## contact.queryKey 1386 1387queryKey(id: number, holder?: Holder): Promise<string> 1388 1389根据联系人的id查询联系人的key,使用Promise方式作为异步方法。 1390 1391**需要权限**:ohos.permission.READ_CONTACTS 1392 1393**系统能力**:SystemCapability.Applications.ContactsData 1394 1395**参数:** 1396| 参数名 | 类型 | 必填 | 说明 | 1397| ------ | ----------------- | ---- | ---------------------- | 1398| id | number | 是 | 联系人对象的id属性。 | 1399| holder | [Holder](#holder) | 否 | 创建联系人的应用信息。 | 1400 1401**返回值:** 1402| 类型 | 说明 | 1403| --------------------- | ---------------------------------------------------- | 1404| Promise<string> | 以Promise形式返回结果,返回查询到的联系人对应的key。 | 1405 1406**示例:** 1407 1408 ``` 1409 let promise = contact.queryKey(id, { 1410 holderId: 0 1411 }); 1412 promise.then((data) => { 1413 console.log(`queryKey success: data->${JSON.stringify(data)}`); 1414 }).catch((err) => { 1415 console.error(`queryKey fail: err->${JSON.stringify(err)}`); 1416 }); 1417 ``` 1418 1419 1420## Contact 1421 1422联系人对象类。 1423 1424**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1425 1426### 常量 1427 1428| 名称 | 值 | 说明 | 1429| ------------------ | ---- | ---------------- | 1430| INVALID_CONTACT_ID | -1 | 默认联系人的id。 | 1431 1432 1433### 属性 1434 1435| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1436| ----------------- | --------------------------------------- | ---- | ---- | -------------------------------------- | 1437| id | number | 是 | 否 | 联系人的id。 | 1438| key | string | 是 | 否 | 联系人的key。 | 1439| contactAttributes | [ContactAttributes](#contactattributes) | 是 | 是 | 联系人的属性列表。 | 1440| emails | [Email](#email)[] | 是 | 是 | 联系人的邮箱地址列表。 | 1441| events | [Event](#event)[] | 是 | 是 | 联系人的生日、周年纪念等重要日期列表。 | 1442| groups | [Group](#group)[] | 是 | 是 | 联系人的群组列表。 | 1443| imAddresses | [ImAddress](#imaddress)[] | 是 | 是 | 联系人的即时消息地址列表。 | 1444| phoneNumbers | [PhoneNumber](#phonenumber)[] | 是 | 是 | 联系人的电话号码列表。 | 1445| portrait | [Portrait](#portrait) | 是 | 是 | 联系人的头像。 | 1446| postalAddresses | [PostalAddress](#postaladdress)[] | 是 | 是 | 联系人的邮政地址列表。 | 1447| relations | [Relation](#relation)[] | 是 | 是 | 联系人的关系列表。 | 1448| sipAddresses | [SipAddress](#sipaddress)[] | 是 | 是 | 联系人的会话发起协议(SIP)地址列表。 | 1449| websites | [Website](#website)[] | 是 | 是 | 联系人的网站列表。 | 1450| name | [Name](#name) | 是 | 是 | 联系人的姓名。 | 1451| nickName | [NickName](#nickname) | 是 | 是 | 联系人的昵称。 | 1452| note | [Note](#note) | 是 | 是 | 联系人的备注。 | 1453| organization | [Organization](#organization) | 是 | 是 | 联系人的组织信息。 | 1454 1455 1456**对象创建示例:** 1457 1458使用JSON格式创建联系人数据: 1459 1460 1461``` 1462let myContact = { 1463 phoneNumbers: [{ 1464 phoneNumber: "138xxxxxxxx" 1465 }], 1466 name: { 1467 fullName: "fullName", 1468 namePrefix: "namePrefix" 1469 }, 1470 nickName: { 1471 nickName: "nickName" 1472 } 1473}; 1474``` 1475 1476 1477 或使用new一个Contact对象的方式创建数据: 1478 1479``` 1480let myContact = new contact.Contact(); 1481let name = new contact.Name(); 1482name.fullName = "fullName"; 1483let phoneNumber = new contact.PhoneNumber(); 1484phoneNumber.phoneNumber = "138xxxxxxxx"; 1485myContact.name = name; 1486myContact.phoneNumbers = [phoneNumber]; 1487``` 1488 1489 1490## ContactAttributes 1491 1492联系人属性列表,一般作为入参用来标识希望查询的联系人属性。 1493当传入为null时,默认查询全部属性。 1494 1495**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1496 1497| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1498| ---------- | ------------------------- | ---- | ---- | ---------------- | 1499| attributes | [Attribute](#attribute)[] | 是 | 是 | 联系人属性列表。 | 1500 1501 1502**对象创建示例:** 1503 1504使用JSON格式创建数据: 1505 1506 1507``` 1508let contactAttributes = { 1509 attributes: [ 1510 contact.Attribute.ATTR_EMAIL, 1511 contact.Attribute.ATTR_NAME, 1512 contact.Attribute.ATTR_PHONE 1513 ] 1514}; 1515``` 1516 1517或使用new一个ContactAttributes对象的方式创建数据: 1518 1519 1520``` 1521let contactAttributes = new contact.ContactAttributes(); 1522contactAttributes.attributes = ["ATTR_EMAIL"]; 1523``` 1524 1525 1526## Attribute 1527 1528枚举,联系人属性列表。 1529 1530**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1531 1532| 名称 | 说明 | 1533| --------------------- | ---------------------------------- | 1534| ATTR_CONTACT_EVENT | 联系人的生日、周年纪念等重要日期。 | 1535| ATTR_EMAIL | 联系人的邮箱地址。 | 1536| ATTR_GROUP_MEMBERSHIP | 联系人的群组。 | 1537| ATTR_IM | 联系人的即时消息地址。 | 1538| ATTR_NAME | 联系人的姓名。 | 1539| ATTR_NICKNAME | 联系人的昵称。 | 1540| ATTR_NOTE | 联系人的备注。 | 1541| ATTR_ORGANIZATION | 联系人的组织信息。 | 1542| ATTR_PHONE | 联系人的电话号码。 | 1543| ATTR_PORTRAIT | 联系人的头像。 | 1544| ATTR_POSTAL_ADDRESS | 联系人的邮政地址。 | 1545| ATTR_RELATION | 联系人的关系。 | 1546| ATTR_SIP_ADDRESS | 联系人的会话发起协议(SIP)地址。 | 1547| ATTR_WEBSITE | 联系人的网站。 | 1548 1549 1550**对象创建示例:** 1551 1552使用JSON格式创建数据: 1553 1554``` 1555let attributes = [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]; 1556``` 1557 1558 1559## Email 1560 1561联系人的邮箱。 1562 1563**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1564 1565### 常量 1566 1567| 名称 | 值 | 说明 | 1568| ---------------- | ---- | ---------------- | 1569| CUSTOM_LABEL | 0 | 自定义邮箱类型。 | 1570| EMAIL_HOME | 1 | 家庭邮箱类型。 | 1571| EMAIL_WORK | 2 | 工作邮箱类型。 | 1572| EMAIL_OTHER | 3 | 其它邮箱类型。 | 1573| INVALID_LABEL_ID | -1 | 无效邮箱类型。 | 1574 1575 1576### 属性 1577 1578| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1579| ----------- | -------- | ---- | ---- | ---------------- | 1580| email | string | 是 | 是 | 邮箱地址。 | 1581| labelName | string | 是 | 是 | 邮箱的类型名称。 | 1582| displayName | string | 是 | 是 | 邮箱的显示名称。 | 1583| labelId | number | 是 | 是 | 邮箱的类型。 | 1584 1585 1586**对象创建示例:** 1587 1588 使用JSON格式创建数据: 1589 1590``` 1591let email = { 1592 email: "xxx@email.com", 1593 displayName: "displayName" 1594} 1595``` 1596 1597 1598 或使用new一个Email对象的方式创建数据: 1599 1600``` 1601let email = new contact.Email(); 1602email.email = "xxx@email.com"; 1603``` 1604 1605 1606## Holder 1607 1608创建联系人的应用信息类。 1609 1610**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1611 1612| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1613| ----------- | -------- | ---- | ---- | ---------- | 1614| bundleName | string | 是 | 否 | 包名。 | 1615| displayName | string | 是 | 否 | 应用名称。 | 1616| holderId | number | 是 | 是 | 应用id。 | 1617 1618 1619**对象创建示例:** 1620 1621 使用JSON格式创建数据: 1622 1623``` 1624let holder = { 1625 holderId: 0 1626}; 1627``` 1628 1629 或使用new一个Holder对象的方式创建数据: 1630 1631``` 1632let holder = new contact.Holder(); 1633holder.holderId = 0; 1634``` 1635 1636 1637## Event 1638 1639联系人事件类。 1640 1641**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1642 1643### 常量 1644 1645| 名称 | 值 | 说明 | 1646| ----------------- | ---- | ------------------ | 1647| CUSTOM_LABEL | 0 | 自定义事件类型。 | 1648| EVENT_ANNIVERSARY | 1 | 周年纪念事件类型。 | 1649| EVENT_OTHER | 2 | 其它事件类型。 | 1650| EVENT_BIRTHDAY | 3 | 生日事件类型。 | 1651| INVALID_LABEL_ID | -1 | 无效事件类型。 | 1652 1653 1654### 属性 1655 1656| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1657| --------- | -------- | ---- | ---- | -------------- | 1658| eventDate | string | 是 | 是 | 事件的日期。 | 1659| labelName | string | 是 | 是 | 事件类型名称。 | 1660| labelId | number | 是 | 是 | 事件类型。 | 1661 1662 1663**对象创建示例:** 1664 1665 使用JSON格式创建数据: 1666 1667``` 1668let event = { 1669 eventDate: "xxxxxx" 1670}; 1671``` 1672 1673 或使用new一个Event对象的方式创建数据: 1674 1675``` 1676let event = new contact.Event(); 1677event.eventDate = "xxxxxx"; 1678``` 1679 1680 1681## Group 1682 1683联系人的群组类。 1684 1685**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1686 1687| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1688| ------- | -------- | ---- | ---- | ------------------ | 1689| groupId | number | 是 | 是 | 联系人群组的id。 | 1690| title | string | 是 | 是 | 联系人群组的名称。 | 1691 1692 1693**对象创建示例:** 1694 1695 使用JSON格式创建数据: 1696 1697``` 1698let group = { 1699 groupId: 1, 1700 title: "title" 1701}; 1702``` 1703 1704 或使用new一个Group对象的方式创建数据: 1705 1706``` 1707let group = new contact.Group(); 1708group.title = "title"; 1709``` 1710 1711 1712## ImAddress 1713 1714联系人的即时消息地址。 1715 1716**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1717 1718### 常量 1719 1720| 名称 | 值 | 说明 | 1721| ---------------- | ---- | -------------------- | 1722| CUSTOM_LABEL | -1 | 自定义即时消息类型。 | 1723| IM_AIM | 0 | AIM即时消息类型。 | 1724| IM_MSN | 1 | MSN即时消息类型。 | 1725| IM_YAHOO | 2 | YAHOO即时消息类型。 | 1726| IM_SKYPE | 3 | SKYPE即时消息类型。 | 1727| IM_QQ | 4 | QQ即时消息类型。 | 1728| IM_ICQ | 6 | ICQ即时消息类型。 | 1729| IM_JABBER | 7 | JABBER即时消息类型。 | 1730| INVALID_LABEL_ID | -2 | 无效的即时消息类型。 | 1731 1732 1733### 属性 1734 1735| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1736| --------- | -------- | ---- | ---- | ------------------ | 1737| imAddress | string | 是 | 是 | 即时消息地址。 | 1738| labelName | string | 是 | 是 | 即时消息类型名称。 | 1739| labelId | number | 是 | 是 | 即时消息类型。 | 1740 1741 1742**对象创建示例:** 1743 1744 使用JSON格式创建数据: 1745 1746``` 1747let imAddress = { 1748 imAddress: "imAddress", 1749 labelName: "labelName" 1750}; 1751``` 1752 1753 1754 或使用new一个ImAddress对象的方式创建数据: 1755 1756``` 1757let imAddress = new contact.ImAddress(); 1758imAddress.imAddress = "imAddress"; 1759``` 1760 1761 1762## Name 1763 1764联系人的名字类。 1765 1766**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1767 1768| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1769| ------------------ | -------- | ---- | ---- | --------------------------- | 1770| familyName | string | 是 | 是 | 联系人的家庭姓名。 | 1771| familyNamePhonetic | string | 是 | 是 | 联系人的家庭姓名拼音。 | 1772| fullName | string | 是 | 是 | 联系人的全名。 | 1773| givenName | string | 是 | 是 | 联系人的名称(firstName)。 | 1774| givenNamePhonetic | string | 是 | 是 | 联系人的名称拼音。 | 1775| middleName | string | 是 | 是 | 联系人的中间名。 | 1776| middleNamePhonetic | string | 是 | 是 | 联系人的中间名拼音。 | 1777| namePrefix | string | 是 | 是 | 联系人的姓名前缀。 | 1778| nameSuffix | string | 是 | 是 | 联系人的姓名后缀。 | 1779 1780 1781**对象创建示例:** 1782 1783 使用JSON格式创建数据: 1784 1785``` 1786let name = { 1787 familyName: "familyName", 1788 fullName: "fullName" 1789}; 1790``` 1791 1792 或使用new一个name对象的方式创建数据: 1793 1794``` 1795let name = new contact.Name(); 1796name.familyName = "familyName"; 1797name.fullName = "fullName"; 1798``` 1799 1800 1801## NickName 1802 1803联系人的昵称类。 1804 1805**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1806 1807| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1808| -------- | -------- | ---- | ---- | -------------- | 1809| nickName | string | 是 | 是 | 联系人的昵称。 | 1810 1811 1812**对象创建示例:** 1813 1814 使用JSON格式创建数据: 1815 1816``` 1817let nickName = { 1818 nickName: "nickName" 1819}; 1820``` 1821 1822 或使用new一个NickName对象的方式创建数据: 1823 1824``` 1825let nickName = new contact.NickName(); 1826nickName.nickName = "nickName"; 1827``` 1828 1829 1830## Note 1831 1832联系人的备注类。 1833 1834**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1835 1836| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1837| ----------- | -------- | ---- | ---- | ------------------ | 1838| noteContent | string | 是 | 是 | 联系人的备注内容。 | 1839 1840 1841**对象创建示例:** 1842 1843 使用JSON格式创建数据: 1844 1845``` 1846let note = { 1847 noteContent: "noteContent" 1848}; 1849``` 1850 1851 或使用new一个Note对象的方式创建数据: 1852 1853``` 1854let note = new contact.Note(); 1855note.noteContent = "noteContent"; 1856``` 1857 1858 1859## Organization 1860 1861联系人的组织类。 1862 1863**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1864 1865| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1866| ----- | -------- | ---- | ---- | ---------- | 1867| name | string | 是 | 是 | 组织名称。 | 1868| title | string | 是 | 是 | 组织标题。 | 1869 1870 1871**对象创建示例:** 1872 1873 使用JSON格式创建数据: 1874 1875``` 1876let organization = { 1877 name: "name", 1878 title: "title" 1879}; 1880``` 1881 1882 或使用new一个Organization对象的方式创建数据: 1883 1884``` 1885let organization = new contact.Organization(); 1886organization.name = "name"; 1887organization.title = "title"; 1888``` 1889 1890 1891## PhoneNumber 1892 1893联系人电话号码类。 1894 1895**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1896 1897### 常量 1898 1899| 名称 | 值 | 说明 | 1900| ---------------- | ---- | ------------------------------------------------ | 1901| CUSTOM_LABEL | 0 | 自定义电话类型。 | 1902| NUM_HOME | 1 | 家庭电话类型。 | 1903| NUM_MOBILE | 2 | 移动电话类型。 | 1904| NUM_WORK | 3 | 工作电话类型。 | 1905| NUM_FAX_WORK | 4 | 工作传真电话类型。 | 1906| NUM_FAX_HOME | 5 | 家庭传真电话类型。 | 1907| NUM_PAGER | 6 | 寻呼机电话类型。 | 1908| NUM_OTHER | 7 | 其它电话类型。 | 1909| NUM_CALLBACK | 8 | 回呼电话类型。 | 1910| NUM_CAR | 9 | 车机电话类型。 | 1911| NUM_COMPANY_MAIN | 10 | 公司电话类型。 | 1912| NUM_ISDN | 11 | 综合业务数字网(ISDN)电话类型。 | 1913| NUM_MAIN | 12 | 主电话类型。 | 1914| NUM_OTHER_FAX | 13 | 其它传真类型。 | 1915| NUM_RADIO | 14 | 无线电话类型。 | 1916| NUM_TELEX | 15 | 电传电话类型。 | 1917| NUM_TTY_TDD | 16 | 电传打字机(TTY)或测试驱动开发(TDD)电话类型。 | 1918| NUM_WORK_MOBILE | 17 | 工作移动电话类型。 | 1919| NUM_WORK_PAGER | 18 | 工作寻呼机电话类型。 | 1920| NUM_ASSISTANT | 19 | 助理电话类型。 | 1921| NUM_MMS | 20 | 彩信电话类型。 | 1922| INVALID_LABEL_ID | -1 | 无效电话类型。 | 1923 1924 1925### 属性 1926 1927| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1928| ----------- | -------- | ---- | ---- | ------------------ | 1929| labelName | string | 是 | 是 | 电话号码类型名称。 | 1930| phoneNumber | string | 是 | 是 | 电话号码。 | 1931| labelId | number | 是 | 是 | 电话号码类型。 | 1932 1933 1934**对象创建示例:** 1935 1936 使用JSON格式创建数据: 1937 1938``` 1939let phoneNumber = { 1940 phoneNumber: "138xxxxxxxx", 1941 labelId: contact.PhoneNumber.NUM_HOME 1942}; 1943``` 1944 1945 或使用new一个PhoneNumber对象的方式创建数据: 1946 1947``` 1948let phoneNumber = new contact.PhoneNumber(); 1949phoneNumber.phoneNumber = "138xxxxxxxx"; 1950``` 1951 1952 1953## Portrait 1954 1955联系人的头像类。 1956 1957**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1958 1959| 名称 | 参数类型 | 可读 | 可写 | 说明 | 1960| ---- | -------- | ---- | ---- | -------------- | 1961| uri | string | 是 | 是 | 联系人的头像。 | 1962 1963 1964**对象创建示例:** 1965 1966 使用JSON格式创建数据: 1967 1968``` 1969let portrait = { 1970 uri: "uri" 1971}; 1972``` 1973 1974 或使用new一个Portrait对象的方式创建数据: 1975 1976``` 1977let portrait = new contact.Portrait(); 1978portrait.uri = "uri"; 1979``` 1980 1981 1982## PostalAddress 1983 1984联系人的邮政地址类。 1985 1986**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 1987 1988### 常量 1989 1990| 名称 | 值 | 说明 | 1991| ---------------- | ---- | -------------------- | 1992| CUSTOM_LABEL | 0 | 自定义邮政地址类型。 | 1993| ADDR_HOME | 1 | 家庭地址类型。 | 1994| ADDR_WORK | 2 | 工作地址类型。 | 1995| ADDR_OTHER | 3 | 其它地址类型。 | 1996| INVALID_LABEL_ID | -1 | 无效地址类型。 | 1997 1998 1999### 属性 2000 2001| 名称 | 参数类型 | 可读 | 可写 | 说明 | 2002| ------------- | -------- | ---- | ---- | -------------------------- | 2003| city | string | 是 | 是 | 联系人所在的城市。 | 2004| country | string | 是 | 是 | 联系人所在的国家。 | 2005| labelName | string | 是 | 是 | 邮政地址类型名称。 | 2006| neighborhood | string | 是 | 是 | 联系人的邻居。 | 2007| pobox | string | 是 | 是 | 联系人的邮箱。 | 2008| postalAddress | string | 是 | 是 | 联系人的邮政地址。 | 2009| postcode | string | 是 | 是 | 联系人所在区域的邮政编码。 | 2010| region | string | 是 | 是 | 联系人所在的区域。 | 2011| street | string | 是 | 是 | 联系人所在的街道。 | 2012| labelId | number | 是 | 是 | 邮政地址名称。 | 2013 2014 2015**对象创建示例:** 2016 2017 使用JSON格式创建数据: 2018 2019``` 2020let postalAddress = { 2021 city: "city" 2022}; 2023``` 2024 2025 或使用new一个PostalAddress对象的方式创建数据: 2026 2027``` 2028let postalAddress = new contact.PostalAddress(); 2029postalAddress.city = "city"; 2030``` 2031 2032 2033## Relation 2034 2035联系人的关系类。 2036 2037**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 2038 2039### 常量 2040 2041| 名称 | 值 | 说明 | 2042| ------------------------- | ---- | ------------------ | 2043| CUSTOM_LABEL | 0 | 自定义关系类型。 | 2044| RELATION_ASSISTANT | 1 | 助手关系类型。 | 2045| RELATION_BROTHER | 2 | 兄弟关系类型。 | 2046| RELATION_CHILD | 3 | 子女关系类型。 | 2047| RELATION_DOMESTIC_PARTNER | 4 | 同居同伴关系类型。 | 2048| RELATION_FATHER | 5 | 父亲关系类型。 | 2049| RELATION_FRIEND | 6 | 朋友关系类型。 | 2050| RELATION_MANAGER | 7 | 管理者关系类型。 | 2051| RELATION_MOTHER | 8 | 母亲关系类型。 | 2052| RELATION_PARENT | 9 | 父母关系类型。 | 2053| RELATION_PARTNER | 10 | 合作伙伴关系类型。 | 2054| RELATION_REFERRED_BY | 11 | 推荐人关系类型。 | 2055| RELATION_RELATIVE | 12 | 亲属关系类型。 | 2056| RELATION_SISTER | 13 | 姐妹关系类型。 | 2057| RELATION_SPOUSE | 14 | 配偶关系类型。 | 2058| INVALID_LABEL_ID | -1 | 无效的关系类型。 | 2059 2060 2061### 属性 2062 2063| 名称 | 参数类型 | 可读 | 可写 | 说明 | 2064| ------------ | -------- | ---- | ---- | -------------- | 2065| labelName | string | 是 | 是 | 关系类型名称。 | 2066| relationName | string | 是 | 是 | 关系名称。 | 2067| labelId | number | 是 | 是 | 关系类型。 | 2068 2069 2070**对象创建示例:** 2071 2072 使用JSON格式创建数据: 2073 2074``` 2075let relation = { 2076 relationName: "relationName", 2077 labelId: contact.Relation.RELATION_ASSISTANT 2078}; 2079``` 2080 2081 或使用new一个Relation对象的方式创建数据: 2082 2083``` 2084let relation = new contact.Relation(); 2085relation.relationName = "relationName"; 2086relation.labelId = contact.Relation.RELATION_ASSISTANT; 2087``` 2088 2089 2090## SipAddress 2091 2092联系人的会话发起协议(SIP)地址类。 2093 2094**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 2095 2096### 常量 2097 2098| 名称 | 值 | 说明 | 2099| ---------------- | ---- | ----------------------------------- | 2100| CUSTOM_LABEL | 0 | 自定义会话发起协议(SIP)地址类型。 | 2101| SIP_HOME | 1 | 家庭会话发起协议(SIP)地址类型。 | 2102| SIP_WORK | 2 | 工作会话发起协议(SIP)地址类型。 | 2103| SIP_OTHER | 3 | 其它会话发起协议(SIP)地址类型。 | 2104| INVALID_LABEL_ID | -1 | 无效会话发起协议(SIP)地址类型。 | 2105 2106 2107### 属性 2108 2109| 名称 | 参数类型 | 可读 | 可写 | 说明 | 2110| ---------- | -------- | ---- | ---- | --------------------------------- | 2111| labelName | string | 是 | 是 | 会话发起协议(SIP)地址类型名称。 | 2112| sipAddress | string | 是 | 是 | 会话发起协议(SIP)地址。 | 2113| labelId | number | 是 | 是 | 会话发起协议(SIP)地址类型。 | 2114 2115**对象创建示例:** 2116 2117 使用JSON格式创建数据: 2118 2119``` 2120var sipAddress = { 2121 sipAddress: "sipAddress" 2122}; 2123``` 2124 2125 或使用new一个SipAddress对象的方式创建数据: 2126 2127``` 2128let sipAddress = new contact.SipAddress(); 2129sipAddress.sipAddress = "sipAddress"; 2130``` 2131 2132 2133## Website 2134 2135联系人的网站信息类。 2136 2137**系统能力**:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。 2138 2139| 名称 | 参数类型 | 可读 | 可写 | 说明 | 2140| ------- | -------- | ---- | ---- | ------------------ | 2141| website | string | 是 | 是 | 联系人的网站信息。 | 2142 2143 2144**对象创建示例:** 2145 2146 使用JSON格式创建数据: 2147 2148``` 2149let website = { 2150 website: "website" 2151}; 2152``` 2153 2154 或使用new一个Website对象的方式创建数据: 2155 2156``` 2157let website = new contact.Website(); 2158website.website = "website"; 2159```