我使用Ionic4 Framework开发了一个应用程序,其中必须使用插件 @ionic-native/contacts 导入设备的本机通讯录。发生的情况是与displayName
和phoneNumbers
参数相对应的值未正确返回;实际上,它们返回空值。出于演示目的,我放置了一个alert()
,该接收参数来显示我的问题:
我还共享了调用插件并使用它的代码片段:
import { Contacts, Contact, ContactField, ContactName } from '@ionic-native/contacts/ngx';
...
export class ImportarContactosPage {
listaContactos: any;
constructor(public contacts: Contacts) {
this.listarContactos();
}
...
listarContactos(){
this.contacts.find(["*"])
.then(res => {
// Alert
alert(JSON.stringify(res));
//
let datosMostar:any[]=[];
res.map((item) =>{
if(item.displayName != null && item.photos != null && item.phoneNumbers != null){
datosMostar.push({displayName:item.displayName,photos:[{value:this.avatar}],phoneNumbers:item.phoneNumbers})
}
})
console.log(datosMostar);
this.listaContactos = datosMostar;
},error => {
console.log({error:error});
})
}
...
}
我的ionic-info
:
Ionic CLI : 5.0.0 (C:\Users\Carlos\AppData\Roaming\npm\node_modules\ionic)
Ionic Framework : @ionic/angular 4.0.0
@angular-devkit/build-angular : 0.11.4
@angular-devkit/schematics : 7.1.2
@angular/cli : 7.1.0
@ionic/angular-toolkit : 1.2.0
Cordova:
Cordova CLI : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : android 8.0.0
Utility:
cordova-res : 0.3.0
native-run : 0.2.5
System:
Android SDK Tools : 26.1.1 (C:\Users\Carlos\AppData\Local\Android\Sdk)
NodeJS : v10.16.0 (C:\Program Files\nodejs\node.exe)
npm : 6.9.0
OS : Windows 7
几天来我一直在“搜索”和审查论坛,并且我已经尝试了多种方式导入联系人,但是我仍然无法解决问题。
任何同伴,我做错了什么吗?任何建议都欢迎。谢谢。