课程表

Cordova课程

工具箱
速查手册

Cordova 联系人

当前位置:免费教程 » 移动开发 » Cordova

此插件用于访问设备联系人数据库。在本教程中,我们将向您展示如何创建,查询和删除联系人。

步骤1 - 安装联系人插件

  1. C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-contacts

步骤2 - 添加按钮

该按钮将用于调用 createContact 函数。 我们将它放在 index.html 文件中的 div class =“app"中。

  1. <button id = "createContact">ADD CONTACT</button>
  2. <button id = "findContact">FIND CONTACT</button>
  3. <button id = "deleteContact">DELETE CONTACT</button>

步骤2 - 添加事件监听器

打开 index.js 并将以下代码段复制到 onDeviceReady 函数中。

  1. document.getElementById("createContact").addEventListener("click", createContact);
  2. document.getElementById("findContact").addEventListener("click", findContact);
  3. document.getElementById("deleteContact").addEventListener("click", deleteContact);

步骤3A - 回调函数(navigator.contacts.create)

目前,我们没有在设备上存储任何联系人。

Cordova Contact Empty

我们的第一个回调函数将调用 navigator.contacts.create 方法,我们可以指定新的联系人数据。这将创建联系人并将其分配给 myContact 变量,但不会存储在设备上。要存储它,我们需要调用保存方法并创建成功和错误回调函数。

  1. function createContact() {
  2. var myContact = navigator.contacts.create({"displayName": "Test User"});
  3. myContact.save(contactSuccess, contactError);
  4. function contactSuccess() {
  5. alert("Contact is saved!")
  6. }
  7. function contactError(message) {
  8. alert('Failed because: ' + message);
  9. }
  10. }

当我们单击添加联系人按钮时,新的联系人将存储到设备联系人列表中。

Cordova Contact Create

步骤3B - 回调函数(navigator.contacts.find)

我们的第二个回调函数将查询所有联系人。我们将使用 navigator.contacts.find 方法。 选项对象具有过滤器参数,用于指定搜索过滤器。 multiple = true ,因为我们要返回设备中的所有联系人。我们还使用字段键通过 displayName 搜索联系人,因为我们在保存联系人时使用它。

设置选项后,我们使用 find 方法查询联系人。将为找到的每个联系人触发警报消息。

  1. function findContacts() {
  2. var options = new ContactFindOptions();
  3. options.filter = "";
  4. options.multiple = true;
  5.  
  6. fields = ["displayName"];
  7. navigator.contacts.find(fields, contactfindSuccess, contactfindError, options);
  8. function contactfindSuccess(contacts) {
  9. for (var i = 0; i < contacts.length; i++) {
  10. alert("Display Name = " + contacts[i].displayName);
  11. }
  12. }
  13. function contactfindError(message) {
  14. alert('Failed because: ' + message);
  15. }
  16. }

当我们按查找联系人按钮时,将触发一个警报弹出窗口,因为我们只保存了一个联系人。

Cordova Contacts Find

步骤3C - 回调函数(delete)

在这一步中,我们使用 find 方法,但这次我们将设置不同的选项。options.filter 设置为搜索测试用户,因为我们要删除它。 contactfindSuccess 回调返回了我们想要的联系人后,我们使用需要自己的成功和错误回调的 remove 方法删除它。

  1. function deleteContact() {
  2.  
  3. var options = new ContactFindOptions();
  4. options.filter = "Test User";
  5. options.multiple = false;
  6. fields = ["displayName"];
  7.  
  8. navigator.contacts.find(fields, contactfindSuccess, contactfindError, options);
  9.  
  10. function contactfindSuccess(contacts) {
  11.  
  12. var contact = contacts[0];
  13. contact.remove(contactRemoveSuccess, contactRemoveError);
  14.  
  15. function contactRemoveSuccess(contact) {
  16. alert("Contact Deleted");
  17. }
  18.  
  19. function contactRemoveError(message) {
  20. alert('Failed because: ' + message);
  21. }
  22. }
  23.  
  24. function contactfindError(message) {
  25. alert('Failed because: ' + message);
  26. }
  27. }

目前,我们只有一个联系人存储在设备上。我们将手动添加一个,向您显示删除过程。

Cordova Contacts Multiple

现在,您可以点击删除联系人按钮删除测试用户如果我们再次检查联系人列表,我们将看到不再有测试用户

Cordova Contact Deleted
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号