Android 正在寻找Telephony.Sms和CallLog.Calls之间的通用联系人ID
目标:我正在尝试对来自相同(已知)联系人的短信和电话进行分组Android 正在寻找Telephony.Sms和CallLog.Calls之间的通用联系人ID,android,android-sqlite,android-contacts,Android,Android Sqlite,Android Contacts,目标:我正在尝试对来自相同(已知)联系人的短信和电话进行分组 我使用Telephony.SMS.Inbox.CONTENT\u URI和Telephone.SMS.Sent.CONTENT\u URI阅读短信 我使用CallLog.calls.CONTENT\u UTI读取呼叫 我通过以下方式获得联系人ID:使用Uri.withAppendedPath(PhoneLookup.CONTENT\u FILTER\u Uri,phoneNumber) 现在,有了这个电话查询。_ID,我想列出那个
- 我使用
和Telephony.SMS.Inbox.CONTENT\u URI
阅读短信Telephone.SMS.Sent.CONTENT\u URI
- 我使用
读取呼叫CallLog.calls.CONTENT\u UTI
Uri.withAppendedPath(PhoneLookup.CONTENT\u FILTER\u Uri,phoneNumber)
现在,有了这个电话查询。_ID
,我想列出那个联系人的短信
遗憾的是,Telephony.Sms.PERSON
似乎没有存储相同的联系人ID
问题:我如何列出电话查询中的短信。\u ID或者如果不可能,我如何实现我想要的:列出来自同一联系人的短信和电话
PS:
Telephony.textbasedmscolumns.PERSON
似乎指的是不推荐使用的联系人。People
API…Telephony.Sms.PERSON
实际上与联系人contract.DataColumns.RAW\u CONTACT\u ID
匹配
所以我用了:
final Cursor cursor = getContentResolver()
.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
projection, selection, null, null);
正在读取联系人contract.DataColumns.RAW\u CONTACT\u ID