Ionic Native 联系人花费了大量时间和块 UI

Ionic Native contacts spent a lot of time and blocks UI

我正在使用 Ionic + Capacitor + React 进行开发,我需要读取所有联系人号码。 以这种方式使用 ionic-native/contacts:

import { Contacts, ContactFindOptions } from '@ionic-native/contacts';

...

loadContacts() => {
    this.setState(
        {
            loading: true,
        },
    () => {
        var contacts = new Contacts();
        const desiderFields = ['phoneNumbers'];
        var options = new ContactFindOptions();
        options.filter = '';

        options.multiple = true;
        options.hasPhoneNumber = true;
        contacts.find(desiderFields, options).then((result) => { ... } );
    });
}

componentDidMount() {
    this.loadContacts();
}

但是一旦 loadContacts 开始读取联系人 UI 块,甚至状态都没有时间渲染以显示加载器。

此外,导入联系人非常慢,反复显示Fetching in bulk 250 contacts!

我知道 cordova-plugin-contacts 已被弃用,但我无法相信这些不存在的有效替代品可以替代此基本功能。

找不到解决方案。

我找到了这个救了我一命的 cordova 插件:

https://github.com/dbaq/cordova-plugin-contacts-phone-numbers