Android SMS URI定位器

时间:2015-02-21 17:23:25

标签: java android

我已让该应用在textview中显示当前位于收件箱中的所有短信。为了做到这一点,我必须包含URI。我正在尝试测试我拥有但未通过我的celluar运营商(版本)注册的其他手机,因为他们不支持我的手机,因为他们不是来自Verizon。

所以我的问题,Android手机的所有URI是否相同?这是我正在使用的代码,如果有更好的方法来访问收件箱中的所有短信而不指定URI,我愿意更改我的代码。

Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null, null);

while (cur.moveToNext()) {              
    smsAddress = cur.getString(cur.getColumnIndex("address"));
    smsBody = cur.getString(cur.getColumnIndexOrThrow("body"));
    txtResults.append(counter + "From", smsAddress)); 
    txtResults.append(counter + "Message", smsBody));           

    counter++;
}

1 个答案:

答案 0 :(得分:1)

  

Android手机的所有URI是否相同?这是我正在使用的代码,如果有更好的方法来访问收件箱中的所有短信而不指定URI。

是的,所有Android手机都有相同的功能。这是获取所有收件箱邮件的方法。这些消息存储在内容提供商中,允许您从其他应用程序访问它的数据。

要访问它的数据,您需要提供您正在查找的数据的URI。如果你想要发送/收件箱/草稿中的所有邮件,那么它的URI Uri.parse("content://sms/");

要访问收件箱中的内容,请按以下Uri.parse("content://sms/inbox")

进行操作

要访问已发送的内容,请执行以下操作 Uri.parse("content://sms/sent")