Col*_*tin 5 android android-contacts
我正在与Androids联系人联系,并尝试获取特定的数据。我已经可以收到电子邮件,电话号码,他们的姓名等。但是,我很难获取到关系字段。
所以我的目标是:给定一个特定的用户ID(来自Android上的联系人数据库),找出他们的关系字段。
这应该有效。这个想法是连接数据表中的搜索,但使用 CommonDataKinds 中的内容。这是在 where 子句中完成的Data.MIMETYPE == CommonDataKinds.Relation.CONTENT_ITEM_TYPE...... 这将为您提供包含所有关系内容的行。
import android.database.Cursor;
import android.net.Uri;
import android.provider.ContactsContract.CommonDataKinds.Relation;
import android.provider.ContactsContract.Data;
import android.util.Log;
...
public void logCatTheRelation(long contactId){
Uri uri = Data.CONTENT_URI;
String where = String.format(
"%s = ? AND %s = ?",
Data.MIMETYPE,
Relation.CONTACT_ID);
String[] whereParams = new String[] {
Relation.CONTENT_ITEM_TYPE,
Long.toString(contactId),
};
String[] selectColumns = new String[]{
Relation.NAME,
// add additional columns here
};
Cursor relationCursor = this.getContentResolver().query(
uri,
selectColumns,
where,
whereParams,
null);
try{
if (relationCursor.moveToFirst()) {
Log.d("gizm0", relationCursor.getString(
relationCursor.getColumnIndex(Relation.NAME)));
}
Log.d("gizm0", "sadly no relation ... ");
}finally{
relationCursor.close();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
871 次 |
| 最近记录: |