我想阅读收件箱中的特定短信。我在互联网上找到了如何阅读收件箱中的所有短信。那就是我所做的。请帮助我只阅读来自特定号码的一条短信。谢谢
package com.example.liresms;
import android.app.Activity;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.widget.TextView;
public class ReadSMS extends MainActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView view = new TextView(this);
Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,null);
String sms = "";
while (cur.moveToNext()) {
sms += "From :" + cur.getString(2) + " : " + cur.getString(11)+"\n";
}
view.setText(sms);
setContentView(view);
}
}
最佳答案
您已经非常接近这样做了。我建议您查看 ContentResolver.query
方法的参数,并特别注意 selection
参数。您要做的只是选择特定列等于您要查找的数字的消息...
有点像
Cursor cur = getContentResolver().query(uriSMSURI, null, "from=6159995555", null,null);
我不知 Prop 体的列名,但这应该能让你朝着正确的方向开始......
关于android - 读取特定号码的短信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16366164/