java - 在 Android 上使用 Content Resolver 阅读消息时,person 字段始终为空。不管联系人是否存在
问题描述
我正在尝试以编程方式获取手机上所有 SMS 消息的列表。我了解如何获取数据,但是当我使用测试代码将其打印出来时,它并没有告诉我消息属于哪个联系人。这是我的代码:
Cursor cursor = mContext.getContentResolver().query(Uri.parse("content://sms/inbox"), null, null, null, null);
if (cursor.moveToFirst()) { // must check the result to prevent exception
do {
StringBuilder msgData = new StringBuilder();
for(int idx=0;idx<cursor.getColumnCount();idx++)
{
System.out.println(String.format("%s: %s", cursor.getColumnName(idx), cursor.getString(idx)));
}
System.out.println("---------------------------------");
} while (cursor.moveToNext());
} else {
}
我希望能够将每条消息链接到手机联系人数据库中的特定联系人。我看到有一个人员字段,但无论消息是否发送给联系人,它似乎都是空的。如何获取消息所属的联系人?
解决方案
推荐阅读
- firebase - 无法通过热点访问特定 ISP 上的 firebase 端点 - 实时数据库
- flutter - Flutter EditText 查看 Material Design 中的 Floating Hint,如 gmail 登录(轮廓框)
- javascript - javascript:如何在 html 中使用三元表达式渲染?
- tms - Oracle 云应用程序的自动化(如 OTM、CPQ、WHM 等)
- python - 如何在 Flutter 应用程序中使用 python 自动化?
- gerrit - Gerrit - 我得到一个名为“Invalid-Prolog-Rules-Label-Name-”的标签
- windows - Win 10 docker 上的 Windows 7 32 位应用程序
- sql - 在 SQL 中,如何根据另一列中的字符串值对一列中的数值求和
- docker - 我们可以从 docker 容器创建图像吗?
- php - 如何在wordpress中用我自己的替换所有主题样式?