harmony 鸿蒙@ohos.contact (联系人)

  • 2022-08-09
  • 浏览 (520)

@ohos.contact (联系人)

本模块提供联系人管理能力,包括添加联系人、删除联系人、更新联系人等

说明:

本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import contact from '@ohos.contact';

contact.addContact10+

addContact(context: Context, contact: Contact, callback: AsyncCallback<number>): void

添加联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
contact Contact 联系人信息。
callback AsyncCallback<number> 回调函数,返回添加的联系人id。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.addContact(
    globalThis.context as Context,
    {name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
    }, (err, data) => {
      if (err) {
        console.log(`addContact callback: err->${JSON.stringify(err)}`);
        return;
      }
      console.log(`addContact callback: success data->${JSON.stringify(data)}`);
  });

contact.addContact(deprecated)7+

addContact(contact:Contact, callback:AsyncCallback<number>): void

添加联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用addContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
contact Contact 联系人信息。
callback AsyncCallback<number> 回调函数,返回添加的联系人id。

示例:

  // 当前示例代码仅适用于js源文件
  contact.addContact({
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, (err, data) => {
      if (err) {
          console.log(`addContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`addContact callback: success data->${JSON.stringify(data)}`);
  });

contact.addContact10+

addContact(context: Context, contact: Contact): Promise

添加联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
contact Contact 联系人信息。

返回值:

类型 说明
Promise<number> 以Promise形式返回结果,返回添加的联系人id。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.addContact(
    globalThis.context as Context,
    {name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  });
  promise.then((data) => {
    console.log(`addContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
    console.error(`addContact fail: err->${JSON.stringify(err)}`);
  });

contact.addContact(deprecated)7+

addContact(contact: Contact): Promise<number>

添加联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用addContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
contact Contact 联系人信息。

返回值:

类型 说明
Promise<number> 以Promise形式返回结果,返回添加的联系人id。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.addContact({
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  });
  promise.then((data) => {
      console.log(`addContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`addContact fail: err->${JSON.stringify(err)}`);
  });

contact.deleteContact10+

deleteContact(context: Context, key: string, callback: AsyncCallback<void>): void

删除联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人key值,一个联系人对应一个key。
callback AsyncCallback<void> 异步删除联系人之后的回调。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }  
  contact.deleteContact(globalThis.context as Context, 'xxx', (err) => {
      if (err) {
          console.log(`deleteContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('deleteContact success');
  });

contact.deleteContact(deprecated)7+

deleteContact(key: string, callback: AsyncCallback<void>): void

删除联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用deleteContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人key值,一个联系人对应一个key。
callback AsyncCallback<void> 异步删除联系人之后的回调。

示例:

  // 当前示例代码仅适用于js源文件
  contact.deleteContact('xxx', (err) => {
      if (err) {
          console.log(`deleteContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('deleteContact success');
  });

contact.deleteContact10+

deleteContact(context: Context, key: string): Promise<void>

删除联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。

返回值:

类型 说明
Promise<void> 返回一个Promise对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.deleteContact(globalThis.context as Context, 'xxx');
  promise.then(() => {
      console.log(`deleteContact success`);
  }).catch((err) => {
      console.error(`deleteContact fail: err->${JSON.stringify(err)}`);
  });

contact.deleteContact(deprecated)7+

deleteContact(key: string): Promise<void>

删除联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用deleteContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。

返回值:

类型 说明
Promise<void> 返回一个Promise对象。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.deleteContact('xxx');
  promise.then(() => {
      console.log(`deleteContact success`);
  }).catch((err) => {
      console.error(`deleteContact fail: err->${JSON.stringify(err)}`);
  });

contact.updateContact10+

updateContact(context: Context, contact: Contact, callback: AsyncCallback<void>): void

更新联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
contact Contact 联系人信息。
callback AsyncCallback<void> 异步更新联系人之后的回调。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.updateContact(globalThis.context as Context, {
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, (err) => {
      if (err) {
          console.log(`updateContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('updateContact success');
  });

contact.updateContact(deprecated)7+

updateContact(contact: Contact, callback: AsyncCallback<void>): void

更新联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用updateContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
contact Contact 联系人信息。
callback AsyncCallback<void> 异步更新联系人之后的回调。

示例:

  // 当前示例代码仅适用于js源文件
  contact.updateContact({
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, (err) => {
      if (err) {
          console.log(`updateContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('updateContact success');
  });

contact.updateContact10+

updateContact(context: Context, contact: Contact, attrs: ContactAttributes, callback: AsyncCallback<void>): void

更新联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
contact Contact 联系人信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<void> 异步更新联系人之后的回调。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.updateContact(globalThis.context as Context, {
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err) => {
      if (err) {
          console.log(`updateContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('updateContact success');
  });

contact.updateContact(deprecated)7+

updateContact(contact: Contact, attrs: ContactAttributes, callback: AsyncCallback<void>): void

更新联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用updateContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
contact Contact 联系人信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<void> 异步更新联系人之后的回调。

示例:

  // 当前示例代码仅适用于js源文件
  contact.updateContact({
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err) => {
      if (err) {
          console.log(`updateContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log('updateContact success');
  });

contact.updateContact10+

updateContact(context: Context, contact: Contact, attrs?: ContactAttributes): Promise<void>

更新联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
contact Contact 联系人信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<void> 返回一个Promise对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.updateContact(globalThis.context as Context, {
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then(() => {
      console.log('updateContact success');
  }).catch((err) => {
      console.error(`updateContact fail: err->${JSON.stringify(err)}`);
  });

contact.updateContact(deprecated)7+

updateContact(contact: Contact, attrs?: ContactAttributes): Promise<void>

更新联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用updateContact

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
contact Contact 联系人信息。
attrs ContactAttributes 联系人的属性列表。

返回值: |类型 |说明 | |——————-|————————————————-| |Promise<void>|返回一个Promise对象。|

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.updateContact({
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then(() => {
      console.log('updateContact success');
  }).catch((err) => {
      console.error(`updateContact fail: err->${JSON.stringify(err)}`);
  });

contact.isLocalContact10+

isLocalContact(context: Context, id: number, callback: AsyncCallback<boolean>): void

判断当前联系人id是否在电话簿中,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性,一个联系人对应一个id。
callback AsyncCallback<boolean> 回调函数,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.isLocalContact(globalThis.context as Context, /*id*/1, (err, data) => {
      if (err) {
          console.log(`isLocalContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`isLocalContact callback: success data->${JSON.stringify(data)}`);
  });

contact.isLocalContact(deprecated)7+

isLocalContact(id: number, callback: AsyncCallback<boolean>): void

判断当前联系人id是否在电话簿中,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用isLocalContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性,一个联系人对应一个id。
callback AsyncCallback<boolean> 回调函数,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。

示例:

  // 当前示例代码仅适用于js源文件
  contact.isLocalContact(/*id*/1, (err, data) => {
      if (err) {
          console.log(`isLocalContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`isLocalContact callback: success data->${JSON.stringify(data)}`);
  });

contact.isLocalContact10+

isLocalContact(context: Context, id: number): Promise<boolean>

判断当前联系人id是否在电话簿中,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性,一个联系人对应一个id。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回结果,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.isLocalContact(globalThis.context as Context, /*id*/1);
  promise.then((data) => {
      console.log(`isLocalContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`isLocalContact fail: err->${JSON.stringify(err)}`);
  });

contact.isLocalContact(deprecated)7+

isLocalContact(id: number): Promise<boolean>

判断当前联系人id是否在电话簿中,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用isLocalContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性,一个联系人对应一个id。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回结果,返回布尔值。true代表联系人id在本地电话簿中,false则代表联系人id不在本地电话簿中。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.isLocalContact(/*id*/1);
  promise.then((data) => {
      console.log(`isLocalContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`isLocalContact fail: err->${JSON.stringify(err)}`);
  });

contact.isMyCard10+

isMyCard(context: Context, id: number, callback: AsyncCallback<boolean>): void

判断是否为“我的名片”,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性。
callback AsyncCallback<boolean> 回调函数,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.isMyCard(globalThis.context as Context, /*id*/1, (err, data) => {
      if (err) {
          console.log(`isMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`isMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.isMyCard(deprecated)7+

isMyCard(id: number, callback: AsyncCallback<boolean>): void

判断是否为“我的名片”,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用isMyCard

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性。
callback AsyncCallback<boolean> 回调函数,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。

示例:

  // 当前示例代码仅适用于js源文件
  contact.isMyCard(/*id*/1, (err, data) => {
      if (err) {
          console.log(`isMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`isMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.isMyCard10+

isMyCard(context: Context, id: number): Promise<boolean>

判断是否为“我的名片”,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回结果,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.isMyCard(globalThis.context as Context, /*id*/1);
  promise.then((data) => {
      console.log(`isMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`isMyCard fail: err->${JSON.stringify(err)}`);
  });

contact.isMyCard(deprecated)7+

isMyCard(id: number): Promise<boolean>

判断是否为“我的名片”,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用isMyCard

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回结果,返回是否为“我的名片”的布尔值。true代表此联系人是“我的名片”,false则代表不是。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.isMyCard(/*id*/1);
  promise.then((data) => {
      console.log(`isMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`isMyCard fail: err->${JSON.stringify(err)}`);
  });

contact.queryMyCard10+

queryMyCard(context: Context, callback: AsyncCallback<Contact>): void

查询“我的名片”,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
callback AsyncCallback<Contact> 回调函数,返回“我的名片”信息。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryMyCard(globalThis.context as Context, (err, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.queryMyCard(deprecated)7+

queryMyCard(callback: AsyncCallback<Contact>): void

查询“我的名片”,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryMyCard

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
callback AsyncCallback<Contact> 回调函数,返回“我的名片”信息。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryMyCard((err, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.queryMyCard10+

queryMyCard(context: Context, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

查询“我的名片”,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回“我的名片”信息。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryMyCard(globalThis.context as Context, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.queryMyCard(deprecated)7+

queryMyCard(attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

查询“我的名片”,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryMyCard

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回“我的名片”信息。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryMyCard({
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });

contact.queryMyCard10+

queryMyCard(context: Context, attrs?: ContactAttributes): Promise<Contact>

查询“我的名片”,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Contact> 以Promise形式返回结果,返回“我的名片”信息。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryMyCard(globalThis.context as Context, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryMyCard fail: err->${JSON.stringify(err)}`);
  });

contact.queryMyCard(deprecated)7+

queryMyCard(attrs?: ContactAttributes): Promise<Contact>

查询“我的名片”,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryMyCard

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
attrs ContactAttributes 联系人的属性列表。

返回值: |类型 |说明 | |———————————-|——————————————-| |Promise<Contact>|以Promise形式返回结果,返回“我的名片”信息。|

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryMyCard({
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryMyCard fail: err->${JSON.stringify(err)}`);
  });

contact.selectContact(deprecated)7+

selectContact(callback: AsyncCallback<Array<Contact>>): void

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用selectContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.Contacts

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<Contact>> 回调函数,返回选择的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.selectContact((err, data) => {
      if (err) {
          console.log(`selectContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
  });

contact.selectContact(deprecated)7+

selectContact(): Promise<Array<Contact>>

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用selectContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.Contacts

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回选择的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.selectContact();
  promise.then((data) => {
      console.log(`selectContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`selectContact fail: err->${JSON.stringify(err)}`);
  });

contact.selectContacts10+

selectContacts(callback: AsyncCallback<Array<Contact>>): void

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用callback方式作为异步方法。

系统能力:SystemCapability.Applications.Contacts

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<Contact>> 回调函数,返回选择的联系人对象数组。

错误码:

错误码ID 错误信息
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  contact.selectContacts((err, data) => {
      if (err) {
          console.log(`selectContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
  });

contact.selectContacts10+

selectContacts(): Promise<Array<Contact>>

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用Promise方式作为异步方法。

系统能力:SystemCapability.Applications.Contacts

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回选择的联系人对象数组。

错误码:

错误码ID 错误信息
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.selectContacts();
  promise.then((data) => {
      console.log(`selectContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`selectContact fail: err->${JSON.stringify(err)}`);
  });

contact.selectContacts10+

selectContacts(options: ContactSelectionOptions, callback: AsyncCallback<Array<Contact>>): void

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用callback方式作为异步方法。

系统能力:SystemCapability.Applications.Contacts

参数:

参数名 类型 必填 说明
options ContactSelectionOptions 选择联系人时的筛选条件
callback AsyncCallback<Array<Contact>> 回调函数,返回选择的联系人对象数组。

错误码:

错误码ID 错误信息
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  contact.selectContacts({
    isMultiSelect:false
  }, (err, data) => {
      if (err) {
          console.log(`selectContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
  });

contact.selectContacts10+

selectContacts(options: ContactSelectionOptions): Promise<Array<Contact>>

调用选择联系人接口,打开选择联系人UI界面,选定的联系人使用Promise方式作为异步方法。

系统能力:SystemCapability.Applications.Contacts

返回值:

类型 说明
options ContactSelectionOptions
Promise<Array<Contact>> 以Promise形式返回结果,返回选择的联系人对象数组。

错误码:

错误码ID 错误信息
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.selectContacts({isMultiSelect:false});
  promise.then((data) => {
      console.log(`selectContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`selectContact fail: err->${JSON.stringify(err)}`);
  });

contact.queryContact10+

queryContact(context: Context, key: string, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContact(globalThis.context as Context, 'xxx', (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact(deprecated)7+

queryContact(key: string, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContact('xxx', (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact10+

queryContact(context: Context, key: string, holder: Holder, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContact(globalThis.context as Context, 'xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact(deprecated)7+

queryContact(key: string, holder: Holder, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContact('xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact10+

queryContact(context: Context, key: string, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContact(globalThis.context as Context, 'xxx', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact(deprecated)7+

queryContact(key: string, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContact('xxx', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact10+

queryContact(context: Context, key: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContact(globalThis.context as Context, 'xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact(deprecated)7+

queryContact(key: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Contact>): void

根据key查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Contact> 回调函数,返回查询的联系人对象。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContact('xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContact10+

queryContact(context: Context, key: string, holder?: Holder, attrs?: ContactAttributes): Promise<Contact>

根据key查询联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值: |类型 |说明 | |———————————-|———————————————–| |Promise<Contact>|以Promise形式返回结果,返回查询到的联系人对象。|

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryContact(globalThis.context as Context, 'xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContact fail: err->${JSON.stringify(err)}`);
  });

contact.queryContact(deprecated)7+

queryContact(key: string, holder?: Holder, attrs?: ContactAttributes): Promise<Contact>

根据key查询联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContact

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
key string 联系人的key值,一个联系人对应一个key。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值: |类型 |说明 | |———————————-|———————————————–| |Promise<Contact>|以Promise形式返回结果,返回查询到的联系人对象。|

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryContact('xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContact success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContact fail: err->${JSON.stringify(err)}`);
  });

contact.queryContacts10+

queryContacts(context: Context, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContacts(globalThis.context as Context, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts(deprecated)7+

queryContacts(callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContacts((err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts10+

queryContacts(context: Context, holder: Holder, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContacts(globalThis.context as Context, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts(deprecated)7+

queryContacts(holder: Holder, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContacts({
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts10+

queryContacts(context: Context, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContacts(globalThis.context as Context, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts(deprecated)7+

queryContacts(attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContacts({
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts10+

queryContacts(context: Context, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContacts(globalThis.context as Context, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts(deprecated)7+

queryContacts(holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

查询所有联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContacts({
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContacts10+

queryContacts(context: Context, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

查询所有联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值: |类型 |说明 | |———————————————–|—————————————————| |Promise<Array<Contact>>|以Promise形式返回结果,返回查询到的联系人对象数组。|

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryContacts(globalThis.context as Context, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContacts success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContacts fail: err->${JSON.stringify(err)}`);
  });

contact.queryContacts(deprecated)7+

queryContacts(holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

查询所有联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContacts

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryContacts({
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContacts success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContacts fail: err->${JSON.stringify(err)}`);
  });

contact.queryContactsByPhoneNumber10+

queryContactsByPhoneNumber(context: Context, phoneNumber: string, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
phoneNumber string 联系人的电话号码。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByPhoneNumber(globalThis.context as Context, '138xxxxxxxx', (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber(deprecated)7+

queryContactsByPhoneNumber(phoneNumber: string, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByPhoneNumber

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
phoneNumber string 联系人的电话号码。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByPhoneNumber('138xxxxxxxx', (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber10+

queryContactsByPhoneNumber(context: Context, phoneNumber: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByPhoneNumber(globalThis.context as Context, '138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber(deprecated)7+

queryContactsByPhoneNumber(phoneNumber: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByPhoneNumber

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByPhoneNumber('138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber10+

queryContactsByPhoneNumber(context: Context, phoneNumber: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
phoneNumber string 联系人的电话号码。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByPhoneNumber(globalThis.context as Context, '138xxxxxxxx', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber(deprecated)7+

queryContactsByPhoneNumber(phoneNumber: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByPhoneNumber

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
phoneNumber string 联系人的电话号码。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByPhoneNumber('138xxxxxxxx', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber10+

queryContactsByPhoneNumber(context: Context, phoneNumber: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByPhoneNumber(globalThis.context as Context, '138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber(deprecated)7+

queryContactsByPhoneNumber(phoneNumber: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据电话号码查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByPhoneNumber

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByPhoneNumber('138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByPhoneNumber10+

queryContactsByPhoneNumber(context: Context, phoneNumber: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

根据电话号码查询联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryContactsByPhoneNumber(globalThis.context as Context, '138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContactsByPhoneNumber success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContactsByPhoneNumber fail: err->${JSON.stringify(err)}`);
  });

contact.queryContactsByPhoneNumber(deprecated)7+

queryContactsByPhoneNumber(phoneNumber: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

根据电话号码查询联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByPhoneNumber

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
phoneNumber string 联系人的电话号码。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryContactsByPhoneNumber('138xxxxxxxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContactsByPhoneNumber success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContactsByPhoneNumber fail: err->${JSON.stringify(err)}`);
  });

contact.queryContactsByEmail10+

queryContactsByEmail(context: Context, email: string, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
email string 联系人的邮箱地址。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByEmail(globalThis.context as Context, 'xxx@email.com', (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail(deprecated)7+

queryContactsByEmail(email: string, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByEmail

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
email string 联系人的邮箱地址。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByEmail('xxx@email.com', (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail10+

queryContactsByEmail(context: Context, email: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByEmail(globalThis.context as Context, 'xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail(deprecated)7+

queryContactsByEmail(email: string, holder: Holder, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByEmail

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByEmail('xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail10+

queryContactsByEmail(context: Context, email: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
email string 联系人的邮箱地址。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByEmail(globalThis.context as Context, 'xxx@email.com', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail(deprecated)7+

queryContactsByEmail(email: string, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByEmail

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
email string 联系人的邮箱地址。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByEmail('xxx@email.com', {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail10+

queryContactsByEmail(context: Context, email: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryContactsByEmail(globalThis.context as Context, 'xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail(deprecated)7+

queryContactsByEmail(email: string, holder: Holder, attrs: ContactAttributes, callback: AsyncCallback<Array<Contact>>): void

根据email查询联系人,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByEmail

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。
callback AsyncCallback<Array<Contact>> 回调函数,返回查询到联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryContactsByEmail('xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  }, (err, data) => {
      if (err) {
          console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
  });

contact.queryContactsByEmail10+

queryContactsByEmail(context: Context, email: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

根据email查询联系人,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回查询到的联系人对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryContactsByEmail(globalThis.context as Context, 'xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContactsByEmail success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContactsByEmail fail: err->${JSON.stringify(err)}`);
  });

contact.queryContactsByEmail(deprecated)7+

queryContactsByEmail(email: string, holder?: Holder, attrs?: ContactAttributes): Promise<Array<Contact>>

根据email查询联系人,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryContactsByEmail

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
email string 联系人的邮箱地址。
holder Holder 创建联系人的应用信息。
attrs ContactAttributes 联系人的属性列表。

返回值:

类型 说明
Promise<Array<Contact>> 以Promise形式返回结果,返回查询到的联系人对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryContactsByEmail('xxx@email.com', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
  });
  promise.then((data) => {
      console.log(`queryContactsByEmail success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryContactsByEmail fail: err->${JSON.stringify(err)}`);
  });

contact.queryGroups10+

queryGroups(context: Context, callback: AsyncCallback<Array<Group>>): void

查询联系人的所有群组,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
callback AsyncCallback<Array<Group>> 回调函数,返回查询到的群组对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryGroups(globalThis.context as Context, (err, data) => {
      if (err) {
          console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
  });

contact.queryGroups(deprecated)7+

queryGroups(callback: AsyncCallback<Array<Group>>): void

查询联系人的所有群组,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryGroups

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<Group>> 回调函数,返回查询到的群组对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryGroups((err, data) => {
      if (err) {
          console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
  });

contact.queryGroups10+

queryGroups(context: Context, holder: Holder, callback: AsyncCallback<Array<Group>>): void

查询联系人的所有群组,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Group>> 回调函数,返回查询到的群组对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryGroups(globalThis.context as Context, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
  });

contact.queryGroups(deprecated)7+

queryGroups(holder: Holder, callback: AsyncCallback<Array<Group>>): void

查询联系人的所有群组,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryGroups

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
holder Holder 创建联系人的应用信息。
callback AsyncCallback<Array<Group>> 回调函数,返回查询到的群组对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryGroups({
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
  });

contact.queryGroups10+

queryGroups(context: Context, holder?: Holder): Promise<Array<Group>>

查询联系人的所有群组,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
holder Holder 创建联系人的应用信息。

返回值:

类型 说明
Promise<Array<Group>> 以Promise形式返回结果,返回查询到的群组对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryGroups(globalThis.context as Context, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  });
  promise.then((data) => {
      console.log(`queryGroups success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryGroups fail: err->${JSON.stringify(err)}`);
  });

contact.queryGroups(deprecated)7+

queryGroups(holder?: Holder): Promise<Array<Group>>

查询联系人的所有群组,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryGroups

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
holder Holder 创建联系人的应用信息。

返回值:

类型 说明
Promise<Array<Group>> 以Promise形式返回结果,返回查询到的群组对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryGroups({
      holderId: 0,
      bundleName: "",
      displayName: ""
  });
  promise.then((data) => {
      console.log(`queryGroups success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryGroups fail: err->${JSON.stringify(err)}`);
  });

contact.queryHolders10+

queryHolders(context: Context, callback: AsyncCallback<Array<Holder>>): void

查询所有创建联系人的应用信息,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
callback AsyncCallback<Array<Holder>> 回调函数,返回查询到的创建联系人应用信息的对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryHolders(globalThis.context as Context, (err, data) => {
      if (err) {
          console.log(`queryHolders callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryHolders callback: success data->${JSON.stringify(data)}`);
  });

contact.queryHolders(deprecated)7+

queryHolders(callback: AsyncCallback<Array<Holder>>): void

查询所有创建联系人的应用信息,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryHolders

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<Holder>> 回调函数,返回查询到的创建联系人应用信息的对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryHolders((err, data) => {
      if (err) {
          console.log(`queryHolders callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryHolders callback: success data->${JSON.stringify(data)}`);
  });

contact.queryHolders10+

queryHolders(context: Context): Promise<Array<Holder>>

查询所有创建联系人的应用信息,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context

返回值:

类型 说明
Promise<Array<Holder>> 以Promise形式返回结果,返回查询到的创建联系人应用信息的对象数组。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryHolders(globalThis.context as Context);
  promise.then((data) => {
      console.log(`queryHolders success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryHolders fail: err->${JSON.stringify(err)}`);
  });

contact.queryHolders(deprecated)7+

queryHolders(): Promise<Array<Holder>>

查询所有创建联系人的应用信息,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryHolders

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

返回值:

类型 说明
Promise<Array<Holder>> 以Promise形式返回结果,返回查询到的创建联系人应用信息的对象数组。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryHolders();
  promise.then((data) => {
      console.log(`queryHolders success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryHolders fail: err->${JSON.stringify(err)}`);
  });

contact.queryKey10+

queryKey(context: Context, id: number, callback: AsyncCallback<string>): void

根据联系人的id查询联系人的key,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性。
callback AsyncCallback<string> 回调函数,返回查询到的联系人对应的key。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryKey(globalThis.context as Context, /*id*/1, (err, data) => {
      if (err) {
          console.log(`queryKey callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
  });

contact.queryKey(deprecated)7+

queryKey(id: number, callback: AsyncCallback<string>): void

根据联系人的id查询联系人的key,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryKey

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性。
callback AsyncCallback<string> 回调函数,返回查询到的联系人对应的key。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryKey(/*id*/1, (err, data) => {
      if (err) {
          console.log(`queryKey callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
  });

contact.queryKey10+

queryKey(context: Context, id: number, holder: Holder, callback: AsyncCallback<string>): void

根据联系人的id查询联系人的key,使用callback方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<string> 回调函数,返回查询到的联系人对应的key。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  contact.queryKey(globalThis.context as Context, /*id*/1, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryKey callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
  });

contact.queryKey(deprecated)7+

queryKey(id: number, holder: Holder, callback: AsyncCallback<string>): void

根据联系人的id查询联系人的key,使用callback方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryKey

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性。
holder Holder 创建联系人的应用信息。
callback AsyncCallback<string> 回调函数,返回查询到的联系人对应的key。

示例:

  // 当前示例代码仅适用于js源文件
  contact.queryKey(/*id*/1, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, (err, data) => {
      if (err) {
          console.log(`queryKey callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
  });

contact.queryKey10+

queryKey(context: Context, id: number, holder?: Holder): Promise<string>

根据联系人的id查询联系人的key,使用Promise方式作为异步方法。

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
context Context 应用上下文Context,Stage模型的应用Context定义见Context
id number 联系人对象的id属性。
holder Holder 创建联系人的应用信息。

返回值:

类型 说明
Promise<string> 以Promise形式返回结果,返回查询到的联系人对应的key。

错误码:

错误码ID 错误信息
201 Permission denied.
401 Parameter error.

示例:

  // 当前示例代码仅适用于js源文件
  // 获取context
  import UIAbility from '@ohos.app.ability.UIAbility';
  class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage){
      globalThis.context = this.context;
    }
  }
  let promise = contact.queryKey(globalThis.context as Context, /*id*/1, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  });
  promise.then((data) => {
      console.log(`queryKey success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryKey fail: err->${JSON.stringify(err)}`);
  });

contact.queryKey(deprecated)7+

queryKey(id: number, holder?: Holder): Promise<string>

根据联系人的id查询联系人的key,使用Promise方式作为异步方法。

说明

从API version 7 开始支持,从API 10 开始废弃,建议使用queryKey

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名 类型 必填 说明
id number 联系人对象的id属性。
holder Holder 创建联系人的应用信息。

返回值:

类型 说明
Promise<string> 以Promise形式返回结果,返回查询到的联系人对应的key。

示例:

  // 当前示例代码仅适用于js源文件
  let promise = contact.queryKey(/*id*/1, {
      holderId: 0,
      bundleName: "",
      displayName: ""
  });
  promise.then((data) => {
      console.log(`queryKey success: data->${JSON.stringify(data)}`);
  }).catch((err) => {
      console.error(`queryKey fail: err->${JSON.stringify(err)}`);
  });

ContactSelectionOptions10+

选择联系人条件。

系统能力:SystemCapability.Applications.Contacts

名称 类型 必填 说明
isMultiSelect 10+ boolean 是否为多选

Contact

联系人对象类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
INVALID_CONTACT_ID -1 默认联系人的id。

属性

名称 类型 可读 可写 说明
id number 联系人的id。
key string 联系人的key。
contactAttributes ContactAttributes 联系人的属性列表。
emails Email[] 联系人的邮箱地址列表。
events Event[] 联系人的生日、周年纪念等重要日期列表。
groups Group[] 联系人的群组列表。
imAddresses ImAddress[] 联系人的即时消息地址列表。
phoneNumbers PhoneNumber[] 联系人的电话号码列表。
portrait Portrait 联系人的头像。
postalAddresses PostalAddress[] 联系人的邮政地址列表。
relations Relation[] 联系人的关系列表。
sipAddresses SipAddress[] 联系人的会话发起协议(SIP)地址列表。
websites Website[] 联系人的网站列表。
name Name 联系人的姓名。
nickName NickName 联系人的昵称。
note Note 联系人的备注。
organization Organization 联系人的组织信息。

对象创建示例:

使用JSON格式创建联系人数据:

// 当前示例代码仅适用于js源文件
let myContact = {
    phoneNumbers: [{
        phoneNumber: "138xxxxxxxx"
    }],
    name: {
        fullName: "fullName",
        namePrefix: "namePrefix"
    },
    nickName: {
        nickName: "nickName"
    }
};

或使用new一个Contact对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let myContact = new contact.Contact();
let name = new contact.Name();
name.fullName = "fullName";
let phoneNumber = new contact.PhoneNumber();
phoneNumber.phoneNumber = "138xxxxxxxx";
myContact.name = name;
myContact.phoneNumbers = [phoneNumber];

ContactAttributes

联系人属性列表,一般作为入参用来标识希望查询的联系人属性。 当传入为null时,默认查询全部属性。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
attributes Attribute[] 联系人属性列表。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let contactAttributes = {
    attributes: [
        contact.Attribute.ATTR_EMAIL,
        contact.Attribute.ATTR_NAME,
        contact.Attribute.ATTR_PHONE
    ]
};

或使用new一个ContactAttributes对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let contactAttributes = new contact.ContactAttributes();
contactAttributes.attributes = [contact.Attribute.ATTR_EMAIL];

Attribute

枚举,联系人属性列表。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 说明
ATTR_CONTACT_EVENT 联系人的生日、周年纪念等重要日期。
ATTR_EMAIL 联系人的邮箱地址。
ATTR_GROUP_MEMBERSHIP 联系人的群组。
ATTR_IM 联系人的即时消息地址。
ATTR_NAME 联系人的姓名。
ATTR_NICKNAME 联系人的昵称。
ATTR_NOTE 联系人的备注。
ATTR_ORGANIZATION 联系人的组织信息。
ATTR_PHONE 联系人的电话号码。
ATTR_PORTRAIT 联系人的头像。
ATTR_POSTAL_ADDRESS 联系人的邮政地址。
ATTR_RELATION 联系人的关系。
ATTR_SIP_ADDRESS 联系人的会话发起协议(SIP)地址。
ATTR_WEBSITE 联系人的网站。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let attributes = [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE];

Email

联系人的邮箱。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义邮箱类型。
EMAIL_HOME 1 家庭邮箱类型。
EMAIL_WORK 2 工作邮箱类型。
EMAIL_OTHER 3 其它邮箱类型。
INVALID_LABEL_ID -1 无效邮箱类型。

属性

名称 类型 可读 可写 说明
email string 邮箱地址。
labelName string 邮箱的类型名称。
displayName string 邮箱的显示名称。
labelId number 邮箱的类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let email = {
    email: "xxx@email.com",
    displayName: "displayName"
}

或使用new一个Email对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let email = new contact.Email();
email.email = "xxx@email.com";

Holder

创建联系人的应用信息类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
bundleName string Bundle名称。
displayName string 应用名称。
holderId number 应用ID。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let holder = {
  holderId: 0
};

或使用new一个Holder对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let holder = new contact.Holder();
holder.holderId = 0;

Event

联系人事件类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义事件类型。
EVENT_ANNIVERSARY 1 周年纪念事件类型。
EVENT_OTHER 2 其它事件类型。
EVENT_BIRTHDAY 3 生日事件类型。
INVALID_LABEL_ID -1 无效事件类型。

属性

名称 类型 可读 可写 说明
eventDate string 事件的日期。
labelName string 事件类型名称。
labelId number 事件类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let event = {
    eventDate: "xxxxxx"
};

或使用new一个Event对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let event = new contact.Event();
event.eventDate = "xxxxxx";

Group

联系人的群组类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
groupId number 联系人群组的id。
title string 联系人群组的名称。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let group = {
    groupId: 1,
    title: "title"
};

或使用new一个Group对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let group = new contact.Group();
group.title = "title";

ImAddress

联系人的即时消息地址。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL -1 自定义即时消息类型。
IM_AIM 0 AIM即时消息类型。
IM_MSN 1 MSN即时消息类型。
IM_YAHOO 2 YAHOO即时消息类型。
IM_SKYPE 3 SKYPE即时消息类型。
IM_QQ 4 QQ即时消息类型。
IM_ICQ 6 ICQ即时消息类型。
IM_JABBER 7 JABBER即时消息类型。
INVALID_LABEL_ID -2 无效的即时消息类型。

属性

名称 类型 可读 可写 说明
imAddress string 即时消息地址。
labelName string 即时消息类型名称。
labelId number 即时消息类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let imAddress = {
    imAddress: "imAddress",
    labelName: "labelName"
};

或使用new一个ImAddress对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let imAddress = new contact.ImAddress();
imAddress.imAddress = "imAddress";

Name

联系人的名字类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
familyName string 联系人的家庭姓名。
familyNamePhonetic string 联系人的家庭姓名拼音。
fullName string 联系人的全名。
givenName string 联系人的名称(firstName)。
givenNamePhonetic string 联系人的名称拼音。
middleName string 联系人的中间名。
middleNamePhonetic string 联系人的中间名拼音。
namePrefix string 联系人的姓名前缀。
nameSuffix string 联系人的姓名后缀。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let name = {
    familyName: "familyName",
    fullName: "fullName"
};

或使用new一个name对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let name = new contact.Name();
name.familyName = "familyName";
name.fullName = "fullName";

NickName

联系人的昵称类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
nickName string 联系人的昵称。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let nickName = {
    nickName: "nickName"
};

或使用new一个NickName对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let nickName = new contact.NickName();
nickName.nickName = "nickName";

Note

联系人的备注类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
noteContent string 联系人的备注内容。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let note = {
    noteContent: "noteContent"
};

或使用new一个Note对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let note = new contact.Note();
note.noteContent = "noteContent";

Organization

联系人的组织类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
name string 组织名称。
title string 组织标题。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let organization = {
    name: "name",
    title: "title"
};

或使用new一个Organization对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let organization = new contact.Organization();
organization.name = "name";
organization.title = "title";

PhoneNumber

联系人电话号码类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义电话类型。
NUM_HOME 1 家庭电话类型。
NUM_MOBILE 2 移动电话类型。
NUM_WORK 3 工作电话类型。
NUM_FAX_WORK 4 工作传真电话类型。
NUM_FAX_HOME 5 家庭传真电话类型。
NUM_PAGER 6 寻呼机电话类型。
NUM_OTHER 7 其它电话类型。
NUM_CALLBACK 8 回呼电话类型。
NUM_CAR 9 车机电话类型。
NUM_COMPANY_MAIN 10 公司电话类型。
NUM_ISDN 11 综合业务数字网(ISDN)电话类型。
NUM_MAIN 12 主电话类型。
NUM_OTHER_FAX 13 其它传真类型。
NUM_RADIO 14 无线电话类型。
NUM_TELEX 15 电传电话类型。
NUM_TTY_TDD 16 电传打字机(TTY)或测试驱动开发(TDD)电话类型。
NUM_WORK_MOBILE 17 工作移动电话类型。
NUM_WORK_PAGER 18 工作寻呼机电话类型。
NUM_ASSISTANT 19 助理电话类型。
NUM_MMS 20 彩信电话类型。
INVALID_LABEL_ID -1 无效电话类型。

属性

名称 类型 可读 可写 说明
labelName string 电话号码类型名称。
phoneNumber string 电话号码。
labelId number 电话号码类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let phoneNumber = {
    phoneNumber: "138xxxxxxxx",
    labelId: contact.PhoneNumber.NUM_HOME
};

或使用new一个PhoneNumber对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let phoneNumber = new contact.PhoneNumber();
phoneNumber.phoneNumber = "138xxxxxxxx";

Portrait

联系人的头像类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
uri string 联系人的头像。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let portrait = {
    uri: "uri"
};

或使用new一个Portrait对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let portrait = new contact.Portrait();
portrait.uri = "uri";

PostalAddress

联系人的邮政地址类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义邮政地址类型。
ADDR_HOME 1 家庭地址类型。
ADDR_WORK 2 工作地址类型。
ADDR_OTHER 3 其它地址类型。
INVALID_LABEL_ID -1 无效地址类型。

属性

名称 类型 可读 可写 说明
city string 联系人所在的城市。
country string 联系人所在的国家。
labelName string 邮政地址类型名称。
neighborhood string 联系人的邻居。
pobox string 联系人的邮箱。
postalAddress string 联系人的邮政地址。
postcode string 联系人所在区域的邮政编码。
region string 联系人所在的区域。
street string 联系人所在的街道。
labelId number 邮政地址类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let postalAddress = {
    city: "city"
};

或使用new一个PostalAddress对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let postalAddress = new contact.PostalAddress();
postalAddress.city = "city";

Relation

联系人的关系类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义关系类型。
RELATION_ASSISTANT 1 助手关系类型。
RELATION_BROTHER 2 兄弟关系类型。
RELATION_CHILD 3 子女关系类型。
RELATION_DOMESTIC_PARTNER 4 同居同伴关系类型。
RELATION_FATHER 5 父亲关系类型。
RELATION_FRIEND 6 朋友关系类型。
RELATION_MANAGER 7 管理者关系类型。
RELATION_MOTHER 8 母亲关系类型。
RELATION_PARENT 9 父母关系类型。
RELATION_PARTNER 10 合作伙伴关系类型。
RELATION_REFERRED_BY 11 推荐人关系类型。
RELATION_RELATIVE 12 亲属关系类型。
RELATION_SISTER 13 姐妹关系类型。
RELATION_SPOUSE 14 配偶关系类型。
INVALID_LABEL_ID -1 无效的关系类型。

属性

名称 类型 可读 可写 说明
labelName string 关系类型名称。
relationName string 关系名称。
labelId number 关系类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let relation = {
    relationName: "relationName",
    labelId: contact.Relation.RELATION_ASSISTANT
};

或使用new一个Relation对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let relation = new contact.Relation();
relation.relationName = "relationName";
relation.labelId = contact.Relation.RELATION_ASSISTANT;

SipAddress

联系人的会话发起协议(SIP)地址类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

常量

名称 说明
CUSTOM_LABEL 0 自定义会话发起协议(SIP)地址类型。
SIP_HOME 1 家庭会话发起协议(SIP)地址类型。
SIP_WORK 2 工作会话发起协议(SIP)地址类型。
SIP_OTHER 3 其它会话发起协议(SIP)地址类型。
INVALID_LABEL_ID -1 无效会话发起协议(SIP)地址类型。

属性

名称 类型 可读 可写 说明
labelName string 会话发起协议(SIP)地址类型名称。
sipAddress string 会话发起协议(SIP)地址。
labelId number 会话发起协议(SIP)地址类型。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
var sipAddress = {
    sipAddress: "sipAddress"
};

或使用new一个SipAddress对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let sipAddress = new contact.SipAddress();
sipAddress.sipAddress = "sipAddress";

Website

联系人的网站信息类。

系统能力:以下各项对应的系统能力均为SystemCapability.Applications.ContactsData。

名称 类型 可读 可写 说明
website string 联系人的网站信息。

对象创建示例:

使用JSON格式创建数据:

// 当前示例代码仅适用于js源文件
let website = {
    website: "website"
};

或使用new一个Website对象的方式创建数据:

// 当前示例代码仅适用于js源文件
let website = new contact.Website();
website.website = "website";

你可能感兴趣的鸿蒙文章

harmony 鸿蒙接口

harmony 鸿蒙系统公共事件定义(待停用)

harmony 鸿蒙系统公共事件定义

harmony 鸿蒙开发说明

harmony 鸿蒙企业设备管理概述(仅对系统应用开放)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager模块)

harmony 鸿蒙@ohos.distributedBundle (分布式包管理)

harmony 鸿蒙@ohos.bundle (Bundle模块)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (企业设备管理扩展能力)

0  赞