如何才能访问收件箱中的短信,并读取有短信的信息?

解决方案 »

  1.   

    1.获取URI:final String SMS_URI_ALL = "content://sms/";
    2.从contentprovider中读取信息
       ContentResolver cr = mContext.getContentResolver();
       String[] projection = new String[] { "_id", "address", "person",
    "body", "date", "type" };
       Uri uri = Uri.parse(SMS_URI_ALL);
       Cursor cur = cr.query(uri, projection, null, null, "date desc");
    注意,虽然短信有数据库存储,但是我们usr不能直接访问这个数据库的,只能从系统提供的contentprovider来获取里面的相关信息。
    以上代码可以获取短信的发件人、时间、号码、短信类型(是发件箱里的还是收件箱里的)、以及短信正文内容等等的信息