Мы пытаемся получить собственный доступ к списку контактов телефона с помощью cordova-plugin-contacts (пробовали как устройства тестирования ios / android, так и эмуляторы!).
Мы перепробовали все темы вокругсеть, которую мы можем найти, и различные методы / учебные пособия, чтобы попытаться это сделать, но, похоже, ничего не работает.Мы просто получаем пустые экраны, поскольку .ts не удается.Мы попробовали из простых проектов, и проиграли на этом этапе!Мы понимаем, что cordova больше не поддерживает код из-за проблем безопасности, но мы понимаем, что люди все еще могут каким-то образом использовать код.
Наша структура: Ionic CLI 4.12.0
Angular CLI7.3.6
Cordova CLI 9.0.0
NodeJS 11.12.0
Другие пробовали: npm install @ ionic-native / contacts
У поставщиков:
import { Contacts } from '@ionic-native/contacts';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
providers: [
StatusBar,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
Contacts
],
bootstrap: [AppComponent]
})
export class AppModule {}
Html:
<ion-header>
<ion-toolbar>
<ion-title>Contact</ion-title>
</ion-toolbar>
</ion-header>
<ion-content padding>
<ion-list>
<ion-item *ngFor="let contact of contactsFound">
<h3 style="padding-top: 5rem;">{{contact?.displayName}}</h3>
<!--Recorro el numero de cada contacto-->
<p *ngFor="let num of contact?.phoneNumbers">
{{num.value}}
</p>
</ion-item>
</ion-list>
</ion-content>
В .ts:
import { Component } from '@angular/core';
import { NavController, NavParams } from '@ionic/angular';
//Importo la libreria de contactos...
import { Contacts, ContactFieldType, IContactFindOptions} from "@ionic-native/contacts";
//Definimos el selector y los templates y estilos...
@Component({
selector: 'app-contact',
templateUrl: 'contact.page.html'
})
//Clase Principal de la pagina de Contactos...
export class ContactPage {
ourtype: ContactFieldType[] = ["displayName"];
contactsFound = [];
constructor(public navCtrl: NavController, private contacts: Contacts){
this.search('');
}
//Metodo para buscar un contacto con el metodo find();
search(q){
const option: IContactFindOptions = {
filter: q
}
this.contacts.find(this.ourtype, option).then(cont => {
this.contactsFound = cont
})
}
}
Мы попытались добавить оповещения, но все не сработали в коде ...это просто умирает!