当前位置:  开发笔记 > 编程语言 > 正文

Android短信内容(内容://短信/发送)

如何解决《Android短信内容(内容://短信/发送)》经验,为你挑选了1个好方法。

我在从设备上阅读短信时遇到问题.当获取URI' content://sms/inbox' 的内容提供者时,一切都很好,我可以阅读"人员"列,找到人员表中的外键并最终到达联系人及其姓名.

但是,我也想遍历发送的消息.从'content:// sms/sent'读取时,person字段始终显示为0.这是正确读取的字段,以查找已发送邮件的收件人数据吗?如果是这样 - 任何想法为什么我的总是0?

我的所有测试都是在模拟器中完成的,我创建了3个联系人.我以正常方式向您发送消息的模拟器发送了消息.

重申一下,我可以看到4个发送的消息,并阅读相关的正文.我的问题是我似乎无法阅读"人"ID,因此我无法确定收件人是谁.

任何帮助将不胜感激.

非常感谢,

马丁.



1> Tughi..:

使用地址栏.我猜人员栏会被忽略,因为人们可以将短信发送到不在联系人列表中的电话号码.

// address contains the phone number
Uri phoneUri = Uri.withAppendedPath(Contacts.Phones.CONTENT_FILTER_URL, address);
if (phoneUri != null) {
  Cursor phoneCursor = getContentResolver().query(phoneUri, new String[] {Phones._ID, Contacts.Phones.PERSON_ID}, null, null, null);
  if (phoneCursor.moveToFirst()) {
    long person = phonesCursor.getLong(1); // this is the person ID you need
  }
}

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有