0
Как проверить входящий номер, который существующий ли в ежевика списке контактов или нет .. если есть я хочу, чтобы отобразить его имя контакта ..Рег. Контакты добывающие
Заранее спасибо ..
Как проверить входящий номер, который существующий ли в ежевика списке контактов или нет .. если есть я хочу, чтобы отобразить его имя контакта ..Рег. Контакты добывающие
Заранее спасибо ..
я думаю это поможет вам
1. добавить телефон слушателя
Phone.addPhoneListener(new AbstractPhoneListener(){
public void callIncoming(int callId) {
String number = Phone.getCall(callId).getPhoneNumber();
search(number);
super.callIncoming(callId);
}
});
2.search в адресной книге
public void search(String number) throws PIMException{
PIM pim = PIM.getInstance();
BlackBerryContactList contacts = (BlackBerryContactList) pim
.openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE);
Contact template = contacts.createContact();
template.addString(Contact.TEL, Contact.ATTR_MOBILE, number);
Enumeration matches = contacts.items(template);
if (matches.hasMoreElements())
{
Contact contact = (Contact)matches.nextElement();
if (contact.countValues(Contact.NAME) > 0){
String[] name = contact.getStringArray(Contact.NAME, 0);
synchronized (Application.getEventLock()) {
UiEngine ui = Ui.getUiEngine();
Screen screen = new Dialog(Dialog.D_OK,
name[Contact.NAME_GIVEN], Dialog.OK, Bitmap
.getPredefinedBitmap(Bitmap.EXCLAMATION),
VerticalFieldManager.VERTICAL_SCROLL);
ui.pushGlobalScreen(screen, 1, UiEngine.GLOBAL_QUEUE);
}
}
}
}
обновление: in blackberry os 6 Вы можете найти контакт для активного вызова с помощью метода PhoneCall.getContact().
Если входящий номер является существующим номером, устройство автоматически отобразит его имя. – Vivart