从android中联系获取组织详细信息?

时间:2012-08-08 08:12:46

标签: android contacts android-contentprovider

嗨我需要从组织的联系人处获取公司名称我使用此代码来获取组织详细信息

 String orgWhere = ContactsContract.Data.CONTACT_ID + " = ? AND " + ContactsContract.Data.MIMETYPE + " = ?";
            String[] orgWhereParams = new String[]{contactId,
                ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE};
            Cursor orgCur = cr.query(ContactsContract.Data.CONTENT_URI,
                        null, orgWhere, orgWhereParams, null);
            while (orgCur.moveToNext()) {
                String orgName = orgCur.getString(orgCur.getColumnIndex(ContactsContract.CommonDataKinds.Organization.DATA));
                String title = orgCur.getString(orgCur.getColumnIndex(ContactsContract.CommonDataKinds.Organization.TITLE));
                System.out.println(orgName+title);
                companyname_one.add(orgName);
                System.out.println(companyname_one+"new");

            }
            orgCur.close();

使用此代码,我只从联系人的最后一个联系人姓名中获取公司名称。如何获得所有联系人的公司详细信息?

1 个答案:

答案 0 :(得分:8)

您已将查询限制为仅返回有关单个联系人的数据:

ContactsContract.Data.CONTACT_ID + " = ? AND …

删除该声明:

String orgWhere = ContactsContract.Data.MIMETYPE + " = ?";
String[] orgWhereParams = new String[]{
    ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE};