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