我正在为黑莓 10 创建一个短信聊天应用程序。所以我想列出黑莓数据库中的所有联系人并将其列出给用户,以便用户可以轻松选择收件人的手机号码。有没有办法使用 html5/webworks.I只想将所有联系人的姓名和手机号码放入数组或类似的东西中。任何人都可以帮忙吗?提前致谢。
https://developer.blackberry.com/html5/apis/blackberry.pim.contacts.contact.html
我正在为黑莓 10 创建一个短信聊天应用程序。所以我想列出黑莓数据库中的所有联系人并将其列出给用户,以便用户可以轻松选择收件人的手机号码。有没有办法使用 html5/webworks.I只想将所有联系人的姓名和手机号码放入数组或类似的东西中。任何人都可以帮忙吗?提前致谢。
https://developer.blackberry.com/html5/apis/blackberry.pim.contacts.contact.html
BB10 有严格的用户界面指南。你可以通过两种方式做到这一点。您可以调用已经存在的原生联系人列表“卡片”或直接调用查找 API。
要调用联系人列表卡,请使用invokeContactPicker调用模式。完整的示例代码位于黑莓开发者网站https://developer.blackberry.com/html5/apis/blackberry.pim.contacts.html#.invokeContactPicker,但这里是调用单个选择卡的重要片段(您可以调用单个、多个和属性选择):
function onCancel() {
alert("User pressed cancel in contact picker.");
}
function onInvoke(error) {
if (error) {
alert("Error invoking contact picker: " + error.code);
} else {
alert("Contact picker invoked!");
}
}
function onContactSelected(data) {
var contact = contacts.getContact(data.contactId);
if (contact) {
alert("Contact id #" + contactId + " corresponds to '" + contact.name.givenName + " " + contact.name.familyName +"'.");
} else {
alert("There is no contact with id: " + contactId);
}
}
function onContactsSelected(data) {
alert("Total # contacts selected: " + data.contactIds.length);
}
function invokeContactPickerSingle() {
contacts.invokeContactPicker({
mode: ContactPickerOptions.MODE_SINGLE,
fields: ["phoneNumbers"]
}, onContactSelected, onCancel, onInvoke);
}
要收集联系人并直接处理它们,请使用blackberry.pim.contacts.find API。完整的示例代码在黑莓网站上,这里:https ://developer.blackberry.com/html5/apis/blackberry.pim.contacts.html#.find但下面是相关代码的片段:
function listAllContacts() {
var sort = [{
"fieldName": ContactFindOptions.SORT_FIELD_FAMILY_NAME,
"desc": false
}, {
"fieldName": ContactFindOptions.SORT_FIELD_GIVEN_NAME,
"desc": true
}],
// no filter - return all contacts
findOptions = {
// sort contacts first by family name (desc), then by given name (asc)
sort: sort,
limit: -1 // limit - all contacts returned
};
contacts.find(["name"], findOptions, onFindSuccess, onFindError);
}
function onFindSuccess(results) {
console.log("Found " + results.length + " contacts in total");
}
function onFindError(error) {
console.log("Error: " + error.code);
}
让我知道这是否有帮助!