HarmonyOS 鸿蒙Next使用电话本接口无法获取电话本数据

发布于 1周前 作者 yuanlaile 来自 鸿蒙OS

HarmonyOS 鸿蒙Next使用电话本接口无法获取电话本数据 使用获取所有联系人接口,返回的data是undefied,没有数据,如下:

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)}`);
});

已添加权限:

let p: Permissions = 'ohos.permission.READ_CONTACTS';

实际上手机中的电话本已经存储了数据,


更多关于HarmonyOS 鸿蒙Next使用电话本接口无法获取电话本数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

参考:

getContactByPermissions() {

    let context = getContext(this) as common.UIAbilityContext;

    const permissions: Array<Permissions> = ['ohos.permission.READ_CONTACTS'];

    abilityAccessCtrl.createAtManager().requestPermissionsFromUser(context, permissions).then(() => {

        try {

            contact.queryContacts(context, (err, data) => {

                if (err) {

                    console.log('addContact callback: err->' + JSON.stringify(err));

                    return;

                }

                console.log('addContact callback: data->' + JSON.stringify(data));

            })

        } catch (err) {

            console.error('errCode: ' + err.code + ', errMessage: ' + err.message);

        }

    })

}

更多关于HarmonyOS 鸿蒙Next使用电话本接口无法获取电话本数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS 鸿蒙Next使用电话本接口无法获取电话本数据的问题,可能的原因及解决方案如下:

  1. 权限检查: 确保应用已正确申请并获取了读取电话本数据的权限。在鸿蒙系统中,这通常需要在manifest文件中声明相关权限,并在运行时请求用户授权。

  2. API调用检查: 验证电话本接口的使用是否符合鸿蒙系统的API规范。检查接口调用参数是否正确,以及是否有遗漏的必要步骤。

  3. 系统兼容性: 确认当前鸿蒙系统版本是否支持所使用的电话本接口。部分接口可能在新版本中进行了更新或调整,导致旧版本无法正常使用。

  4. 数据同步问题: 如果电话本数据是从云端或其他设备同步的,确保同步过程已完成,且数据已正确存储在本地。

  5. 日志分析: 查看系统日志和应用日志,分析是否存在与电话本接口相关的错误信息或异常。

  6. 重启设备: 尝试重启设备,以解决可能存在的系统缓存或进程问题。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部