2011-12-26 105 views
0

我想在Nokia S60 sdk中使用PIM apis来阅读姓名,姓氏,手机号码,电话号码,传真号码,地址,同步和UID详细信息等详细联系信息。无法读取J2ME PIM联系人详细信息

但是,我得到的只有Contact.TEL和Contact.EMAIL值,但我没有看到其他值,但我可以在仿真器联系人详细信息中看到其他字段,例如名字,姓氏。

我已配置所有必需的权限。

ContactList addressbook = (ContactList) (PIM.getInstance().openPIMList(
PIM.CONTACT_LIST, PIM.READ_ONLY)); 
Contact contact = null; 

Enumeration items = addressbook.items(); 
while (items.hasMoreElements()) { 
String name = ""; 
String telephone = ""; 
String mobile = ""; 
String email = ""; 
String InternetTelephone = ""; 
String Company = ""; 
String JobTitle = ""; 
String Synchronisation = ""; 
String UID = ""; 
String LastModified = ""; 
String contactRow = ""; 
System.out.println("\n *** NEW ITEM ***"); 
contact = (Contact) (items.nextElement()); 
System.out.println(" * contact : " + contact.toString()); 
try {  
name = contact.getString(Contact.FORMATTED_NAME, 0); 
System.out.println("Name = " + name); 
} catch (Exception ex) { 
System.out.println(" Name error "+ ex.getMessage()); 
} 

try {  
mobile = contact.getString(Contact.ATTR_MOBILE, 0); 
System.out.println("Name = " + name); 
} catch (Exception ex) { 
System.out.println(" Name error "+ ex.getMessage()); 
} 


try 
{ telephone = contact.getString(Contact.TEL, 0); 
System.out.println("Telephone = " + contact.getString(115, 0)); //field 115: Telephone 
} catch (Exception ex) { 
System.out.println(" Telephone error "+ ex.getMessage()); 
} 

try 
{  
email = contact.getString(Contact.EMAIL, 0); 
System.out.println("E-mail = " + contact.getString(103, 0)); 
} catch (Exception ex) { 
System.out.println(" E-mail error "+ ex.getMessage()); 
} 

try 
{ 
UID = contact.getString(Contact.UID, 0); 
System.out.println(" UID " + UID); 
} catch (Exception ex) { 
System.out.println(" UID error "+ ex.getMessage()); 
} 

try 
{ 
LastModified = contact.getString(114, 0); 
System.out.println(" Last modified " + contact.getString(114, 0)); 
} catch (Exception ex) { 
System.out.println(" Last modified error "+ ex.getMessage()); 
} 

期待您的宝贵建议。

在此先感谢。

+0

查看我对其他帖子的回答[here](http://stackoverflow.com/questions/8322054/cant-access-read-sim-phonebook-in-nokia/8406715#8406715)。设备上支持的“联系人”属性因设备而异,因此您需要使用PIMList.getSupportedFields()来查询它,并在其中标识可用的“联系人”属性。通过这样做,您还可以验证OP是否提到了“Contact”属性在目标设备上受支持。模拟器上的PIM支持与设备完全不同,因此建议检查目标设备上的PIM实现。 – Vimal 2011-12-27 20:59:17

+0

嗨,感谢您的回复,我已阅读您的文章。问题是,如果我尝试获取文件的值,例如电子邮件,名字,最后和TEl以及移动设备,其他人,则获得大约8到9个档案作为受支持的档案,但没有从他们那里获得任何价值。像UID,Synchronizastion,语音通话和其他领域的文件没有得到任何,虽然他们apprear在支持的字段标签。 – 2011-12-28 06:58:08

回答

相关问题