public ArrayList<Email> getEmailAddresses(String id) {
ArrayList<Email> emails = new ArrayList<Email>(); Cursor emailCur = this.cr.query(
Contacts.ContactMethods.CONTENT_EMAIL_URI,
null,
Contacts.ContactMethods.PERSON_ID + " = ?",
new String[]{id}, null);
while (emailCur.moveToNext()) {
// This would allow you get several email addresses
Email e = new Email(emailCur.getString(emailCur.getColumnIndex(Contacts.ContactMethods.DATA))
,emailCur.getString(emailCur.getColumnIndex(Contacts.ContactMethods.CONTENT_EMAIL_TYPE))
);
emails.add(e);
}
emailCur.close();
return(emails);
} public ArrayList<Address> getContactAddresses(String id) {
ArrayList<Address> addrList = new ArrayList<Address>(); String where = Contacts.ContactMethods.PERSON_ID + " = ? AND " + Contacts.ContactMethods.KIND + " = ?";
String[] whereParameters = new String[]{id,
Contacts.ContactMethods.CONTENT_POSTAL_ITEM_TYPE}; Cursor addrCur = this.cr.query(Contacts.ContactMethods.CONTENT_URI, null, where, whereParameters, null);
while(addrCur.moveToNext()) {
String addr = addrCur.getString(addrCur.getColumnIndex(Contacts.ContactMethodsColumns.DATA));
String type = addrCur.getString(addrCur.getColumnIndex(Contacts.ContactMethodsColumns.TYPE));
Address a = new Address(addr, type);
addrList.add(a);
}
addrCur.close();
return(addrList);
} http://jasonshieh.javaeye.com/blog/793543以上是1.6的,2.1把URl换成ContactsContract类的,楼主可以查查api文档
android2.0以后取得通讯录联系人使用的URI有所变化,改为ContactsContract类,以前的Contacts类已经不推荐使用了。
ArrayList<Email> emails = new ArrayList<Email>(); Cursor emailCur = this.cr.query(
Contacts.ContactMethods.CONTENT_EMAIL_URI,
null,
Contacts.ContactMethods.PERSON_ID + " = ?",
new String[]{id}, null);
while (emailCur.moveToNext()) {
// This would allow you get several email addresses
Email e = new Email(emailCur.getString(emailCur.getColumnIndex(Contacts.ContactMethods.DATA))
,emailCur.getString(emailCur.getColumnIndex(Contacts.ContactMethods.CONTENT_EMAIL_TYPE))
);
emails.add(e);
}
emailCur.close();
return(emails);
} public ArrayList<Address> getContactAddresses(String id) {
ArrayList<Address> addrList = new ArrayList<Address>(); String where = Contacts.ContactMethods.PERSON_ID + " = ? AND " + Contacts.ContactMethods.KIND + " = ?";
String[] whereParameters = new String[]{id,
Contacts.ContactMethods.CONTENT_POSTAL_ITEM_TYPE}; Cursor addrCur = this.cr.query(Contacts.ContactMethods.CONTENT_URI, null, where, whereParameters, null);
while(addrCur.moveToNext()) {
String addr = addrCur.getString(addrCur.getColumnIndex(Contacts.ContactMethodsColumns.DATA));
String type = addrCur.getString(addrCur.getColumnIndex(Contacts.ContactMethodsColumns.TYPE));
Address a = new Address(addr, type);
addrList.add(a);
}
addrCur.close();
return(addrList);
} http://jasonshieh.javaeye.com/blog/793543以上是1.6的,2.1把URl换成ContactsContract类的,楼主可以查查api文档
android2.0以后取得通讯录联系人使用的URI有所变化,改为ContactsContract类,以前的Contacts类已经不推荐使用了。
解决方案 »
- popupWindow弹出后,怎么才能让后面的Activity能够响应事件呢
- 我想把一个应用的代码文件打包成jar在集成另一个应用里面怎么做?
- 有木有那种释放内存的方法啊?像360一样,清理内存。。。
- android.os.NetworkOnMainTheadException错误导致的原因和解决的办法
- 自定义照相机带来的不可兼容问题
- 怎么设置TableLayout里面单元格边框颜色,很急,谢谢!分就这么多了.
- Handler类接收不到消息
- 一个通知添加震动的问题。
- 网页能访问servlet,android访问不了。求大神!!
- 如何实现单点登录
- 帮忙解决一个触摸效果问题
- 又见空指针java.lang.NullPointerException
联系人通信地址:ContactsContract.CommonDataKinds.StructuredPostal
EMAIL:ContactsContract.CommonDataKinds.Event
我的代码是:public ArrayList<String> getContactAddresses(String id) {
ArrayList<String> addrList = new ArrayList<String>();
String addrWhere = Contacts.ContactMethods.PERSON_ID + " = ? AND "
+ Contacts.ContactMethods.KIND + " = ?";
String[] addrWhereParams = new String[] { id,
Contacts.ContactMethods.CONTENT_POSTAL_ITEM_TYPE }; Cursor addrCur = getContentResolver().query(
Contacts.ContactMethods.CONTENT_URI, null, addrWhere,
addrWhereParams, null);
while (addrCur.moveToNext()) {
String addr = addrCur.getString(addrCur
.getColumnIndex(Contacts.ContactMethodsColumns.DATA));
addrList.add(addr);
}
addrCur.close();
return (addrList);
}不知道什么原因啊。