HarmonyOS实战开发:@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

参数:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.addContact(
    context,
    {name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
    }, (err: BusinessError, 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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.addContact({
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, (err: BusinessError, 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<number>

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

需要权限:ohos.permission.WRITE_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  let promise = contact.addContact(
    context,
    {name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  });
  promise.then((data) => {
    console.log(`addContact success: data->${JSON.stringify(data)}`);
  }).catch((err: BusinessError) => {
    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

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.addContact({
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
});
promise.then((data) => {
    console.log(`addContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    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

参数:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.deleteContact(context, 'xxx', (err: BusinessError) => {
      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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.deleteContact('xxx', (err: BusinessError) => {
    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

参数:

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

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.deleteContact(context, 'xxx');
promise.then(() => {
    console.log(`deleteContact success`);
}).catch((err: BusinessError) => {
    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

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.deleteContact('xxx');
promise.then(() => {
    console.log(`deleteContact success`);
}).catch((err: BusinessError) => {
    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

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.updateContact(context, {
    id: 1,
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, (err: BusinessError) => {
    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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.updateContact({
    id: 1,
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, (err: BusinessError) => {
    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

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.updateContact(context, {
    id: 1,
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError) => {
    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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.updateContact({
    id: 1,
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err:BusinessError) => {
    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

参数:

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

返回值:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  let promise = contact.updateContact(context, {
      id: 1,
      name: {fullName: 'xxx'},
      phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
  }, {
      attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
  });
  promise.then(() => {
      console.log('updateContact success');
  }).catch((err: BusinessError) => {
      console.error(`updateContact fail: err->${JSON.stringify(err)}`);
  });Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
contactContact联系人信息。
attrsContactAttributes联系人的属性列表。

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.updateContact({
    id: 1,
    name: {fullName: 'xxx'},
    phoneNumbers: [{phoneNumber: '138xxxxxxxx'}]
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then(() => {
    console.log('updateContact success');
}).catch((err) => {
    console.error(`updateContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.isLocalContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
class EntryAbility extends UIAbility {
  onWindowStageCreate(windowStage){
    globalThis.context = this.context;
  }
}
contact.isLocalContact(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)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
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)}`);
});Copy to clipboardErrorCopied

contact.isLocalContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  let promise = contact.isLocalContact(context, /*id*/1);
  promise.then((data) => {
      console.log(`isLocalContact success: data->${JSON.stringify(data)}`);
  }).catch((err: BusinessError) => {
      console.error(`isLocalContact fail: err->${JSON.stringify(err)}`);
  });Copy to clipboardErrorCopied

contact.isLocalContact(deprecated)7+

isLocalContact(id: number): Promise<boolean>

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.isLocalContact(/*id*/1);
promise.then((data) => {
    console.log(`isLocalContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`isLocalContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.isMyCard10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.isMyCard(context, /*id*/1, (err: BusinessError, data) => {
      if (err) {
          console.log(`isMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`isMyCard callback: success data->${JSON.stringify(data)}`);
  });Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.isMyCard(/*id*/1, (err: BusinessError, data) => {
    if (err) {
        console.log(`isMyCard callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`isMyCard callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.isMyCard10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  let promise = contact.isMyCard(context, /*id*/1);
  promise.then((data) => {
      console.log(`isMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err: BusinessError) => {
      console.error(`isMyCard fail: err->${JSON.stringify(err)}`);
  });Copy to clipboardErrorCopied

contact.isMyCard(deprecated)7+

isMyCard(id: number): Promise<boolean>

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.isMyCard(/*id*/1);
promise.then((data) => {
    console.log(`isMyCard success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`isMyCard fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryMyCard10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.queryMyCard(context, (err: BusinessError, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });Copy to clipboardErrorCopied

contact.queryMyCard(deprecated)7+

queryMyCard(callback: AsyncCallback<Contact>): void

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryMyCard((err: BusinessError, data) => {
    if (err) {
        console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryMyCard10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.queryMyCard(context, {
      attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
  }, (err: BusinessError, data) => {
      if (err) {
          console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
  });Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryMyCard({
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryMyCard callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryMyCard callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryMyCard10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  let promise = contact.queryMyCard(context, {
      attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
  });
  promise.then((data) => {
      console.log(`queryMyCard success: data->${JSON.stringify(data)}`);
  }).catch((err: BusinessError) => {
      console.error(`queryMyCard fail: err->${JSON.stringify(err)}`);
  });Copy to clipboardErrorCopied

contact.queryMyCard(deprecated)7+

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

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryMyCard({
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryMyCard success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryMyCard fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.selectContact((err: BusinessError, data) => {
    if (err) {
        console.log(`selectContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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形式返回结果,返回选择的联系人对象数组。

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.selectContact();
promise.then((data) => {
    console.log(`selectContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`selectContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.selectContacts10+

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

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

系统能力:SystemCapability.Applications.Contacts

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
contact.selectContacts((err: BusinessError, data) => {
    if (err) {
        console.log(`selectContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.selectContacts10+

selectContacts(): Promise<Array<Contact>>

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

系统能力:SystemCapability.Applications.Contacts

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.selectContacts();
promise.then((data) => {
    console.log(`selectContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`selectContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.selectContacts10+

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

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

系统能力:SystemCapability.Applications.Contacts

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
contact.selectContacts({
  isMultiSelect:false
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`selectContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`selectContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.selectContacts10+

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

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

系统能力:SystemCapability.Applications.Contacts

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.selectContacts({isMultiSelect:false});
promise.then((data) => {
    console.log(`selectContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`selectContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContact(context, 'xxx', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContact('xxx', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContact(context, 'xxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContact('xxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContact(context, 'xxx', {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContact('xxx', {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
keystring联系人的key值,一个联系人对应一个key。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Contact>回调函数,返回查询的联系人对象。

错误码:

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

示例:

  import { BusinessError } from '@ohos.base';
  // 获取context
  let context = getContext(this) as Context;
  contact.queryContact(context, 'xxx', {
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
  }, (err: BusinessError, data) => {
      if (err) {
          console.log(`queryContact callback: err->${JSON.stringify(err)}`);
          return;
      }
      console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
  });Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
keystring联系人的key值,一个联系人对应一个key。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Contact>回调函数,返回查询的联系人对象。

示例:

import { BusinessError } from '@ohos.base';
contact.queryContact('xxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContact callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContact callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContact10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
keystring联系人的key值,一个联系人对应一个key。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryContact(context, 'xxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
keystring联系人的key值,一个联系人对应一个key。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryContact('xxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryContact success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryContact fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryContacts10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContacts(context, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContacts(deprecated)7+

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

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContacts((err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContacts10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContacts(context, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContacts({
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContacts10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContacts(context, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContacts({
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContacts10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContacts(context, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContacts({
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContacts callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContacts callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContacts10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryContacts(context, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryContacts success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryContacts fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

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

返回值:

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

示例:

  import { BusinessError } from '@ohos.base';
  let promise = contact.queryContacts({
      holderId: 0,
      bundleName: "",
      displayName: ""
  }, {
      attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
  });
  promise.then((data) => {
      console.log(`queryContacts success: data->${JSON.stringify(data)}`);
  }).catch((err: BusinessError) => {
      console.error(`queryContacts fail: err->${JSON.stringify(err)}`);
  });Copy to clipboardErrorCopied

contact.queryContactsByPhoneNumber10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByPhoneNumber(context, '138xxxxxxxx', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByPhoneNumber('138xxxxxxxx', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByPhoneNumber10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByPhoneNumber(context, '138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByPhoneNumber('138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByPhoneNumber10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByPhoneNumber(context, '138xxxxxxxx', {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByPhoneNumber('138xxxxxxxx', {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByPhoneNumber10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
phoneNumberstring联系人的电话号码。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Array<Contact>>回调函数,返回查询到的联系人对象数组。

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByPhoneNumber(context, '138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
phoneNumberstring联系人的电话号码。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Array<Contact>>回调函数,返回查询到的联系人对象数组。

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByPhoneNumber('138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByPhoneNumber callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByPhoneNumber callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByPhoneNumber10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
phoneNumberstring联系人的电话号码。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryContactsByPhoneNumber(context, '138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryContactsByPhoneNumber success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryContactsByPhoneNumber fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
phoneNumberstring联系人的电话号码。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryContactsByPhoneNumber('138xxxxxxxx', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE]
});
promise.then((data) => {
    console.log(`queryContactsByPhoneNumber success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryContactsByPhoneNumber fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByEmail10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByEmail(context, 'xxx@email.com', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByEmail('xxx@email.com', (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByEmail10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByEmail(context, 'xxx@email.com', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByEmail('xxx@email.com', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByEmail10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByEmail(context, 'xxx@email.com', {
    attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByEmail('xxx@email.com', {
    attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
emailstring联系人的邮箱地址。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Array<Contact>>回调函数,返回查询到联系人对象数组。

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryContactsByEmail(context, 'xxx@email.com', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
emailstring联系人的邮箱地址。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。
callbackAsyncCallback<Array<Contact>>回调函数,返回查询到联系人对象数组。

示例:

import { BusinessError } from '@ohos.base';
contact.queryContactsByEmail('xxx@email.com', {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, {
    attributes: [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME]
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryContactsByEmail callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryContactsByEmail callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryContactsByEmail10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

参数名类型必填说明
contextContext应用上下文Context,Stage模型的应用Context定义见Context
emailstring联系人的邮箱地址。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryContactsByEmail(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: BusinessError) => {
    console.error(`queryContactsByEmail fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

参数名类型必填说明
emailstring联系人的邮箱地址。
holderHolder创建联系人的应用信息。
attrsContactAttributes联系人的属性列表。

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
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: BusinessError) => {
    console.error(`queryContactsByEmail fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryGroups10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryGroups(context, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryGroups(deprecated)7+

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

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryGroups((err: BusinessError, data) => {
    if (err) {
        console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryGroups10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryGroups(context, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryGroups callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryGroups callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryGroups({
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, 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

参数:

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

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryGroups(context, {
    holderId: 0,
    bundleName: "",
    displayName: ""
});
promise.then((data) => {
    console.log(`queryGroups success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    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

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryGroups({
    holderId: 0,
    bundleName: "",
    displayName: ""
});
promise.then((data) => {
    console.log(`queryGroups success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryGroups fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryHolders10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryHolders(context, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryHolders callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryHolders callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryHolders(deprecated)7+

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

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

说明

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryHolders((err: BusinessError, data) => {
    if (err) {
        console.log(`queryHolders callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryHolders callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryHolders10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryHolders(context);
promise.then((data) => {
    console.log(`queryHolders success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryHolders fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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形式返回结果,返回查询到的创建联系人应用信息的对象数组。

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryHolders();
promise.then((data) => {
    console.log(`queryHolders success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryHolders fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

contact.queryKey10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryKey(context, /*id*/1, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryKey callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryKey(/*id*/1, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryKey callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryKey10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
contact.queryKey(context, /*id*/1, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryKey callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

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

参数:

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

示例:

import { BusinessError } from '@ohos.base';
contact.queryKey(/*id*/1, {
    holderId: 0,
    bundleName: "",
    displayName: ""
}, (err: BusinessError, data) => {
    if (err) {
        console.log(`queryKey callback: err->${JSON.stringify(err)}`);
        return;
    }
    console.log(`queryKey callback: success data->${JSON.stringify(data)}`);
});Copy to clipboardErrorCopied

contact.queryKey10+

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

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

需要权限:ohos.permission.READ_CONTACTS

系统能力:SystemCapability.Applications.ContactsData

参数:

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

返回值:

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

错误码:

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

示例:

import { BusinessError } from '@ohos.base';
// 获取context
let context = getContext(this) as Context;
let promise = contact.queryKey(context, /*id*/1, {
    holderId: 0,
    bundleName: "",
    displayName: ""
});
promise.then((data) => {
    console.log(`queryKey success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryKey fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

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

参数:

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

返回值:

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

示例:

import { BusinessError } from '@ohos.base';
let promise = contact.queryKey(/*id*/1, {
    holderId: 0,
    bundleName: "",
    displayName: ""
});
promise.then((data) => {
    console.log(`queryKey success: data->${JSON.stringify(data)}`);
}).catch((err: BusinessError) => {
    console.error(`queryKey fail: err->${JSON.stringify(err)}`);
});Copy to clipboardErrorCopied

ContactSelectionOptions10+

选择联系人条件。

系统能力:SystemCapability.Applications.Contacts

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

Contact

联系人对象类。

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

常量

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

属性

名称类型可读可写说明
idnumber联系人的id。
keystring联系人的key。
contactAttributesContactAttributes联系人的属性列表。
emailsEmail[]联系人的邮箱地址列表。
eventsEvent[]联系人的生日、周年纪念等重要日期列表。
groupsGroup[]联系人的群组列表。
imAddressesImAddress[]联系人的即时消息地址列表。
phoneNumbersPhoneNumber[]联系人的电话号码列表。
portraitPortrait联系人的头像。
postalAddressesPostalAddress[]联系人的邮政地址列表。
relationsRelation[]联系人的关系列表。
sipAddressesSipAddress[]联系人的会话发起协议(SIP)地址列表。
websitesWebsite[]联系人的网站列表。
nameName联系人的姓名。
nickNameNickName联系人的昵称。
noteNote联系人的备注。
organizationOrganization联系人的组织信息。

对象创建示例:

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

let myContact: contact.Contact = {
    phoneNumbers: [{
        phoneNumber: "138xxxxxxxx"
    }],
    name: {
        fullName: "fullName",
        namePrefix: "namePrefix"
    },
    nickName: {
        nickName: "nickName"
    }
};Copy to clipboardErrorCopied

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

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];Copy to clipboardErrorCopied

ContactAttributes

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

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

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

对象创建示例:

使用JSON格式创建数据:

let contactAttributes: contact.ContactAttributes = {
    attributes: [
        contact.Attribute.ATTR_EMAIL,
        contact.Attribute.ATTR_NAME,
        contact.Attribute.ATTR_PHONE
    ]
};Copy to clipboardErrorCopied

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

let contactAttributes = new contact.ContactAttributes();
contactAttributes.attributes = [contact.Attribute.ATTR_EMAIL];Copy to clipboardErrorCopied

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格式创建数据:

let attributes = [contact.Attribute.ATTR_EMAIL, contact.Attribute.ATTR_NAME, contact.Attribute.ATTR_PHONE];Copy to clipboardErrorCopied

Email

联系人的邮箱。

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

常量

名称说明
CUSTOM_LABEL0自定义邮箱类型。
EMAIL_HOME1家庭邮箱类型。
EMAIL_WORK2工作邮箱类型。
EMAIL_OTHER3其它邮箱类型。
INVALID_LABEL_ID-1无效邮箱类型。

属性

名称类型可读可写说明
emailstring邮箱地址。
labelNamestring邮箱的类型名称。
displayNamestring邮箱的显示名称。
labelIdnumber邮箱的类型。

对象创建示例:

使用JSON格式创建数据:

let email: contact.Email = {
    email: "xxx@email.com",
    displayName: "displayName"
}Copy to clipboardErrorCopied

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

let email = new contact.Email();
email.email = "xxx@email.com";Copy to clipboardErrorCopied

Holder

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

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

名称类型可读可写说明
bundleNamestringBundle名称。
displayNamestring应用名称。
holderIdnumber应用ID。

对象创建示例:

使用JSON格式创建数据:

let holder: contact.Holder = {
  holderId: 0
};Copy to clipboardErrorCopied

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

let holder = new contact.Holder();
holder.holderId = 0;Copy to clipboardErrorCopied

Event

联系人事件类。

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

常量

名称说明
CUSTOM_LABEL0自定义事件类型。
EVENT_ANNIVERSARY1周年纪念事件类型。
EVENT_OTHER2其它事件类型。
EVENT_BIRTHDAY3生日事件类型。
INVALID_LABEL_ID-1无效事件类型。

属性

名称类型可读可写说明
eventDatestring事件的日期。
labelNamestring事件类型名称。
labelIdnumber事件类型。

对象创建示例:

使用JSON格式创建数据:

let event: contact.Event = {
    eventDate: "xxxxxx"
};Copy to clipboardErrorCopied

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

let event = new contact.Event();
event.eventDate = "xxxxxx";Copy to clipboardErrorCopied

Group

联系人的群组类。

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

名称类型可读可写说明
groupIdnumber联系人群组的id。
titlestring联系人群组的名称。

对象创建示例:

使用JSON格式创建数据:

let group: contact.Group = {
    groupId: 1,
    title: "title"
};Copy to clipboardErrorCopied

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

let group = new contact.Group();
group.title = "title";Copy to clipboardErrorCopied

ImAddress

联系人的即时消息地址。

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

常量

名称说明
CUSTOM_LABEL-1自定义即时消息类型。
IM_AIM0AIM即时消息类型。
IM_MSN1MSN即时消息类型。
IM_YAHOO2YAHOO即时消息类型。
IM_SKYPE3SKYPE即时消息类型。
IM_QQ4QQ即时消息类型。
IM_ICQ6ICQ即时消息类型。
IM_JABBER7JABBER即时消息类型。
INVALID_LABEL_ID-2无效的即时消息类型。

属性

名称类型可读可写说明
imAddressstring即时消息地址。
labelNamestring即时消息类型名称。
labelIdnumber即时消息类型。

对象创建示例:

使用JSON格式创建数据:

let imAddress: contact.ImAddress = {
    imAddress: "imAddress",
    labelName: "labelName"
};Copy to clipboardErrorCopied

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

let imAddress = new contact.ImAddress();
imAddress.imAddress = "imAddress";Copy to clipboardErrorCopied

Name

联系人的名字类。

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

名称类型可读可写说明
familyNamestring联系人的家庭姓名。
familyNamePhoneticstring联系人的家庭姓名拼音。
fullNamestring联系人的全名。
givenNamestring联系人的名称(firstName)。
givenNamePhoneticstring联系人的名称拼音。
middleNamestring联系人的中间名。
middleNamePhoneticstring联系人的中间名拼音。
namePrefixstring联系人的姓名前缀。
nameSuffixstring联系人的姓名后缀。

对象创建示例:

使用JSON格式创建数据:

let name: contact.Name = {
    familyName: "familyName",
    fullName: "fullName"
};Copy to clipboardErrorCopied

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

let name = new contact.Name();
name.familyName = "familyName";
name.fullName = "fullName";Copy to clipboardErrorCopied

NickName

联系人的昵称类。

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

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

对象创建示例:

使用JSON格式创建数据:

let nickName: contact.NickName = {
    nickName: "nickName"
};Copy to clipboardErrorCopied

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

let nickName = new contact.NickName();
nickName.nickName = "nickName";Copy to clipboardErrorCopied

Note

联系人的备注类。

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

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

对象创建示例:

使用JSON格式创建数据:

let note: contact.Note() = {
    noteContent: "noteContent"
};Copy to clipboardErrorCopied

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

let note = new contact.Note();
note.noteContent = "noteContent";Copy to clipboardErrorCopied

Organization

联系人的组织类。

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

名称类型可读可写说明
namestring组织名称。
titlestring组织标题。

对象创建示例:

使用JSON格式创建数据:

let organization: contact.Organization = {
    name: "name",
    title: "title"
};Copy to clipboardErrorCopied

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

let organization = new contact.Organization();
organization.name = "name";
organization.title = "title";Copy to clipboardErrorCopied

PhoneNumber

联系人电话号码类。

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

常量

名称说明
CUSTOM_LABEL0自定义电话类型。
NUM_HOME1家庭电话类型。
NUM_MOBILE2移动电话类型。
NUM_WORK3工作电话类型。
NUM_FAX_WORK4工作传真电话类型。
NUM_FAX_HOME5家庭传真电话类型。
NUM_PAGER6寻呼机电话类型。
NUM_OTHER7其它电话类型。
NUM_CALLBACK8回呼电话类型。
NUM_CAR9车机电话类型。
NUM_COMPANY_MAIN10公司电话类型。
NUM_ISDN11综合业务数字网(ISDN)电话类型。
NUM_MAIN12主电话类型。
NUM_OTHER_FAX13其它传真类型。
NUM_RADIO14无线电话类型。
NUM_TELEX15电传电话类型。
NUM_TTY_TDD16电传打字机(TTY)或测试驱动开发(TDD)电话类型。
NUM_WORK_MOBILE17工作移动电话类型。
NUM_WORK_PAGER18工作寻呼机电话类型。
NUM_ASSISTANT19助理电话类型。
NUM_MMS20彩信电话类型。
INVALID_LABEL_ID-1无效电话类型。

属性

名称类型可读可写说明
labelNamestring电话号码类型名称。
phoneNumberstring电话号码。
labelIdnumber电话号码类型。

对象创建示例:

使用JSON格式创建数据:

let phoneNumber: contact.PhoneNumber = {
    phoneNumber: "138xxxxxxxx",
    labelId: contact.PhoneNumber.NUM_HOME
};Copy to clipboardErrorCopied

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

let phoneNumber = new contact.PhoneNumber();
phoneNumber.phoneNumber = "138xxxxxxxx";Copy to clipboardErrorCopied

Portrait

联系人的头像类。

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

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

对象创建示例:

使用JSON格式创建数据:

let portrait: contact.Portrait = {
    uri: "uri"
};Copy to clipboardErrorCopied

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

let portrait = new contact.Portrait();
portrait.uri = "uri";Copy to clipboardErrorCopied

PostalAddress

联系人的邮政地址类。

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

常量

名称说明
CUSTOM_LABEL0自定义邮政地址类型。
ADDR_HOME1家庭地址类型。
ADDR_WORK2工作地址类型。
ADDR_OTHER3其它地址类型。
INVALID_LABEL_ID-1无效地址类型。

属性

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

对象创建示例:

使用JSON格式创建数据:

let postalAddress: contact.PostalAddress = {
    city: "city"
};复制到剪贴板错误复制

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

let postalAddress = new contact.PostalAddress();
postalAddress.city = "city";复制到剪贴板错误复制

Relation

联系人的关系类。

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

常量

名称说明
CUSTOM_LABEL0自定义关系类型。
RELATION_ASSISTANT1助手关系类型。
RELATION_BROTHER2兄弟关系类型。
RELATION_CHILD3子女关系类型。
RELATION_DOMESTIC_PARTNER4同居同伴关系类型。
RELATION_FATHER5父亲关系类型。
RELATION_FRIEND6朋友关系类型。
RELATION_MANAGER7管理者关系类型。
RELATION_MOTHER8母亲关系类型。
RELATION_PARENT9父母关系类型。
RELATION_PARTNER10合作伙伴关系类型。
RELATION_REFERRED_BY11推荐人关系类型。
RELATION_RELATIVE12亲属关系类型。
RELATION_SISTER13姐妹关系类型。
RELATION_SPOUSE14配偶关系类型。
INVALID_LABEL_ID-1无效的关系类型。

属性

名称类型可读可写说明
labelNamestring关系类型名称。
relationNamestring关系名称。
labelIdnumber关系类型。

对象创建示例:

使用JSON格式创建数据:

let relation: contact.Relation = {
    relationName: "relationName",
    labelId: contact.Relation.RELATION_ASSISTANT
};Copy to clipboardErrorCopied

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

let relation = new contact.Relation();
relation.relationName = "relationName";
relation.labelId = contact.Relation.RELATION_ASSISTANT;Copy to clipboardErrorCopied

SipAddress

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

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

常量

名称说明
CUSTOM_LABEL0自定义会话发起协议(SIP)地址类型。
SIP_HOME1家庭会话发起协议(SIP)地址类型。
SIP_WORK2工作会话发起协议(SIP)地址类型。
SIP_OTHER3其它会话发起协议(SIP)地址类型。
INVALID_LABEL_ID-1无效会话发起协议(SIP)地址类型。

属性

名称类型可读可写说明
labelNamestring会话发起协议(SIP)地址类型名称。
sipAddressstring会话发起协议(SIP)地址。
labelIdnumber会话发起协议(SIP)地址类型。

对象创建示例:

使用JSON格式创建数据:

let sipAddress: contact.SipAddress = {
    sipAddress: "sipAddress"
};Copy to clipboardErrorCopied

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

let sipAddress = new contact.SipAddress();
sipAddress.sipAddress = "sipAddress";Copy to clipboardErrorCopied

Website

联系人的网站信息类。

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

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

对象创建示例:

使用JSON格式创建数据:

let website: contact.Website = {
    website: "website"
};复制到剪贴板错误复制

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

let website = new contact.Website();
website.website = "website";

最后

有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。 

这份鸿蒙(HarmonyOS NEXT)资料包含了鸿蒙开发必掌握的核心知识要点,内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(HarmonyOS NEXT)技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

鸿蒙(HarmonyOS NEXT)最新学习路线

  •  HarmonOS基础技能

  • HarmonOS就业必备技能 
  •  HarmonOS多媒体技术

  • 鸿蒙NaPi组件进阶

  • HarmonOS高级技能

  • 初识HarmonOS内核 
  • 实战就业级设备开发

有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包含:ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。

获取以上完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

《鸿蒙 (OpenHarmony)开发入门教学视频》

《鸿蒙生态应用开发V2.0白皮书》

图片

《鸿蒙 (OpenHarmony)开发基础到实战手册》

OpenHarmony北向、南向开发环境搭建

图片

 《鸿蒙开发基础》

  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

图片

 《鸿蒙开发进阶》

  • Stage模型入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 通知与窗口管理
  • 多媒体技术
  • 安全技能
  • 任务管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向未来设计
  • 鸿蒙系统移植和裁剪定制
  • ……

图片

《鸿蒙进阶实战》

  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

图片

 获取以上完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个机会。只有积极应对变化,不断学习和提升自己,他们才能在这个变革的时代中立于不败之地。

鸿蒙HarmonyOS华为开发的一款分布式操作系统,旨在为各种智能设备提供统一的操作系统平台。在鸿蒙HarmonyOS上实现微信app效果,可以通过以下步骤进行: ### 1. 环境搭建 首先,需要搭建鸿蒙HarmonyOS开发环境。可以通过华为开发者官网下载DevEco Studio,这是鸿蒙系统的集成开发环境(IDE)。 ### 2. 创建新项目 打开DevEco Studio,创建一个新的鸿蒙HarmonyOS项目。选择合适的模板,例如“Empty Ability”,然后填写项目名称和包名等信息。 ### 3. 设计界面 使用鸿蒙HarmonyOS提供的UI框架,设计微信app的界面。可以通过XML布局文件或者代码方式实现。微信的主要界面包括聊天列表、聊天窗口、联系人列表等。 ### 4. 实现功能 #### 4.1 聊天功能 实现聊天功能需要处理消息的发送和接收。可以使用鸿蒙HarmonyOS提供的WebSocket或者Socket接口进行实时通信。 ```java // 示例代码:发送消息 public void sendMessage(String message) { // 使用WebSocket发送消息 webSocket.send(message); } // 示例代码:接收消息 webSocket.onMessage((message) -> { // 处理接收到的消息 receiveMessage(message); }); ``` #### 4.2 联系人列表 实现联系人列表需要从服务器获取联系人数据,并显示在界面上。可以使用ListContainer组件来实现。 ```xml <!-- 示例代码:联系人列表布局 --> <ListContainer id="contactList" orientation="vertical"> </ListContainer> ``` ```java // 示例代码:加载联系人数据 public void loadContacts() { List<Contact> contacts = getContactsFromServer(); contactList.setItemProvider(new ContactItemProvider(contacts)); } ``` #### 4.3 聊天记录 实现聊天记录需要将消息保存到本地数据库中。可以使用鸿蒙HarmonyOS提供的数据库接口进行数据存储。 ```java // 示例代码:保存消息到数据库 public void saveMessage(String message) { // 使用数据库接口保存消息 database.insert("messages", message); } ``` ### 5. 测试与调试 在模拟器或者真机上测试app的各项功能,确保没有明显的bug和问题。 ### 6. 发布 完成开发和测试后,可以将app发布到华为的应用市场。 ### 总结 通过以上步骤,可以在鸿蒙HarmonyOS上实现一个类似微信的app效果。当然,实际开发中还需要考虑更多的细节和优化,例如性能优化、安全性、用户体验等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值