通讯录 - Contacts

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

这个视频我们学习一下 Contacts ,它可以让我们去访问设备的 通讯录,你可以添加新的联系人到通讯录里面,可以找到通讯录里的联系人,也可以删除掉通讯录里的联系人。

通过录有两个方法, contacts.create 还有 contacts.find …

使用 contacts.create 可以去创建一个新的 contact 联系人对象,你需要为它指定一些属性,比如 联系人 的名称 … 地址 … 备注 等等 …

然后我们可以使用 save ,把新创建人的联系人对象保存到设备的通讯里 … 下面我们一起演示一下 …

先要安装一下 contacts 插件 …

安装

phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts.git

index.html

打开项目的 index.html .. 添加一个 创建联系人 的按钮 … 上面定义一个 ID , create-contact …

index.js

再打开 index.js … 在 device ready 事件发生以后 … 我们监听创建联系方式按钮的点击事件 … 当这个事件发生以后 … 去执行 createContact 这个动作 …

下面我们再去定义这个 createContact 要做的事情 ...

createContact

输入 navigator.contacts.create(); .. 用它来创建一个新的联系人对象 … 在它的里面,我们需要指定一些属性 … 这些属性都在一个 Contact 对象里 …

所以先输入一组大括号 .. {}

然后输入属性的名称 … 先定义一下联系人的名称 … 这个属性是 displayName … 冒号右边是这个属性的值 …

displayName: '王皓',

这样新创建的联系人对象里,联系人的名称会是 王皓 .. 不同的属性之间用逗号分隔一下 ..

再使用一个 note 属性 … 它是联系人信息里的备注 … note:'来自宁皓网'

另外 Contact 对象里面还有很多其它的属性,emails, addresses,birthday 等等 … 不过这里我们为了演示,尽量的保持简单一些 … 暂时只添加这两个属性 …

contacts.create() 会根据这些属性,返回一个联系人对象 .. 下面我们可以给它一个名字 …

var newContacts =

现在,使用 newContacts 点,后面加上属性名称的形式,就可以访问到属性的值了 … 比如 newContacts.displayName 会是 王皓 … newContacts.note 会是 来自宁皓网 …

save

到目前为止,我们只是创建了一个新的联系人对象,它并不会保存在设备的通讯录里面 … 想要保存这个联系人的话 … 需要使用 contact 对象的 save 方法 …

先输入想要保存的对象的名称 .. 也就是 newContacts .. 点 save … 这个方法里还有两个参数 … 保存成功以后要执行的动作,还有保存失败的时候要做的事情 …

newContacts.save(app.onSuccess, app.onError)

onSuccess

再定义一下成功的时候做的事情 .. 我们可以把保存成功以后的对象交给这个 onSuccess 去处理 … 输入一个 contact …

然后在它的里面,可以使用 contact 点的形式,去访问到对象里的东西 ..

console.log(‘保存成功!联系人ID’: + contact.id);

onError

再处理一下保存失败以后做的事 … 错误信息会在一个对象里 … 先把它交给 onError 去处理 … 输入 error

然后 console.log(error.code);

这个 error.code 可以输出错误信息 … 保存 …

测试

下面再去测试一下 … 打开 终端工具 … phonegap run --emulator ios .. 重新编译并且安装一下这个应用到模拟器上面 …

应用启动以后 … 点击 创建联系人 这个按钮 …

系统会提示,是否允许应用访问通讯录 … 点击 OK …

打开控制台 … 你会看到保存成功以后,把联系人的信息输出到了控制台上 …

command + shfit + h ,回到系统的主界面上 … 打开 通讯录 …

在这里,你会找到刚才我们新创建的 王皓 这个联系人 … 打开这个联系人 ..

上面会有联系人的名字 … 还有一个 备注 信息 …

通讯录 - Contacts《 PhoneGap 基础 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点